@fnmain/number 1.1.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -9,4 +9,6 @@ export declare function toYi(value: number, { fixed, trimEndZeros, space }?: Opt
9
9
  export declare function toWanYi(value: number, { fixed, trimEndZeros, space }?: Options): string;
10
10
  export declare function toAuto(value: number, { fixed, trimEndZeros, space }?: Options): string;
11
11
  export declare function toPercent(value: number, { fixed, trimEndZeros, space }?: Options): string;
12
+ export declare function parseNumber(input: string): number | null;
12
13
  export {};
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,KAAK,OAAO,GAAG;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAQ9D;AAED,wBAAgB,KAAK,CACnB,KAAK,EAAE,MAAM,EACb,EAAE,KAAS,EAAE,YAAoB,EAAE,KAAU,EAAE,GAAE,OAAY,GAC5D,MAAM,CAIR;AAED,wBAAgB,IAAI,CAClB,KAAK,EAAE,MAAM,EACb,EAAE,KAAS,EAAE,YAAoB,EAAE,KAAU,EAAE,GAAE,OAAY,GAC5D,MAAM,CAIR;AAED,wBAAgB,OAAO,CACrB,KAAK,EAAE,MAAM,EACb,EAAE,KAAS,EAAE,YAAoB,EAAE,KAAU,EAAE,GAAE,OAAY,GAC5D,MAAM,CAIR;AAED,wBAAgB,MAAM,CACpB,KAAK,EAAE,MAAM,EACb,EAAE,KAAS,EAAE,YAAoB,EAAE,KAAU,EAAE,GAAE,OAAY,GAC5D,MAAM,CAcR;AAED,wBAAgB,SAAS,CACvB,KAAK,EAAE,MAAM,EACb,EAAE,KAAS,EAAE,YAAoB,EAAE,KAAU,EAAE,GAAE,OAAY,UAK9D;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiDxD"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.toPercent = exports.toAuto = exports.toWanYi = exports.toYi = exports.toWan = exports.trimTrailingZeros = void 0;
3
+ exports.parseNumber = exports.toPercent = exports.toAuto = exports.toWanYi = exports.toYi = exports.toWan = exports.trimTrailingZeros = void 0;
4
4
  function trimTrailingZeros(numberString) {
5
5
  // Check if the string contains a decimal point
6
6
  if (numberString.includes(".")) {
@@ -51,3 +51,50 @@ function toPercent(value, { fixed = 2, trimEndZeros = false, space = "" } = {})
51
51
  return ret + space + "%";
52
52
  }
53
53
  exports.toPercent = toPercent;
54
+ function parseNumber(input) {
55
+ // Remove whitespace
56
+ input = input.trim();
57
+ // Define a helper function to handle suffixes
58
+ const handleSuffix = (number, suffix) => {
59
+ switch (suffix.toLowerCase()) {
60
+ case "k":
61
+ return number * 1e3;
62
+ case "m":
63
+ return number * 1e6;
64
+ case "g":
65
+ case "b":
66
+ return number * 1e9;
67
+ case "t":
68
+ return number * 1e12;
69
+ case "万":
70
+ case "萬":
71
+ case "w":
72
+ return number * 1e4;
73
+ case "亿":
74
+ return number * 1e8;
75
+ default:
76
+ return number;
77
+ }
78
+ };
79
+ // Check for percentage
80
+ if (input.endsWith("%")) {
81
+ const number = parseFloat(input.slice(0, -1));
82
+ return isNaN(number) ? null : number / 100;
83
+ }
84
+ // Check for per mille
85
+ if (input.endsWith("‰")) {
86
+ const number = parseFloat(input.slice(0, -1));
87
+ return isNaN(number) ? null : number / 1000;
88
+ }
89
+ // Check for suffixes (k, m, g, t)
90
+ const suffixMatch = input.match(/([kmgKMGtT万萬w亿])$/);
91
+ if (suffixMatch) {
92
+ const number = parseFloat(input.slice(0, -1));
93
+ return isNaN(number) ? null : handleSuffix(number, suffixMatch[0]);
94
+ }
95
+ // Check for scientific notation and other formats
96
+ const number = parseFloat(input);
97
+ return isNaN(number) ? null : number;
98
+ }
99
+ exports.parseNumber = parseNumber;
100
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAMA,SAAgB,iBAAiB,CAAC,YAAoB;IACpD,+CAA+C;IAC/C,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QAC9B,iFAAiF;QACjF,OAAO,YAAY,CAAC,OAAO,CAAC,wBAAwB,EAAE,IAAI,CAAC,CAAC;KAC7D;IACD,0DAA0D;IAC1D,OAAO,YAAY,CAAC;AACtB,CAAC;AARD,8CAQC;AAED,SAAgB,KAAK,CACnB,KAAa,EACb,EAAE,KAAK,GAAG,CAAC,EAAE,YAAY,GAAG,KAAK,EAAE,KAAK,GAAG,EAAE,KAAc,EAAE;IAE7D,IAAI,GAAG,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACzC,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAClD,OAAO,GAAG,GAAG,KAAK,GAAG,GAAG,CAAC;AAC3B,CAAC;AAPD,sBAOC;AAED,SAAgB,IAAI,CAClB,KAAa,EACb,EAAE,KAAK,GAAG,CAAC,EAAE,YAAY,GAAG,KAAK,EAAE,KAAK,GAAG,EAAE,KAAc,EAAE;IAE7D,IAAI,GAAG,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC7C,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAClD,OAAO,GAAG,GAAG,KAAK,GAAG,GAAG,CAAC;AAC3B,CAAC;AAPD,oBAOC;AAED,SAAgB,OAAO,CACrB,KAAa,EACb,EAAE,KAAK,GAAG,CAAC,EAAE,YAAY,GAAG,KAAK,EAAE,KAAK,GAAG,EAAE,KAAc,EAAE;IAE7D,IAAI,GAAG,GAAG,CAAC,KAAK,GAAG,aAAa,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACjD,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAClD,OAAO,GAAG,GAAG,KAAK,GAAG,IAAI,CAAC;AAC5B,CAAC;AAPD,0BAOC;AAED,SAAgB,MAAM,CACpB,KAAa,EACb,EAAE,KAAK,GAAG,CAAC,EAAE,YAAY,GAAG,KAAK,EAAE,KAAK,GAAG,EAAE,KAAc,EAAE;IAE7D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC5B,IAAI,GAAG,GAAG,KAAK,EAAE;QACf,IAAI,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC3B,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAClD,OAAO,GAAG,CAAC;KACZ;IACD,IAAI,GAAG,GAAG,SAAS,EAAE;QACnB,OAAO,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;KACrD;IACD,IAAI,GAAG,GAAG,aAAa,EAAE;QACvB,OAAO,IAAI,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;KACpD;IACD,OAAO,OAAO,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;AACxD,CAAC;AAjBD,wBAiBC;AAED,SAAgB,SAAS,CACvB,KAAa,EACb,EAAE,KAAK,GAAG,CAAC,EAAE,YAAY,GAAG,KAAK,EAAE,KAAK,GAAG,EAAE,KAAc,EAAE;IAE7D,IAAI,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACvC,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAClD,OAAO,GAAG,GAAG,KAAK,GAAG,GAAG,CAAC;AAC3B,CAAC;AAPD,8BAOC;AAED,SAAgB,WAAW,CAAC,KAAa;IACvC,oBAAoB;IACpB,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAErB,8CAA8C;IAC9C,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,MAAc,EAAU,EAAE;QAC9D,QAAQ,MAAM,CAAC,WAAW,EAAE,EAAE;YAC5B,KAAK,GAAG;gBACN,OAAO,MAAM,GAAG,GAAG,CAAC;YACtB,KAAK,GAAG;gBACN,OAAO,MAAM,GAAG,GAAG,CAAC;YACtB,KAAK,GAAG,CAAC;YACT,KAAK,GAAG;gBACN,OAAO,MAAM,GAAG,GAAG,CAAC;YACtB,KAAK,GAAG;gBACN,OAAO,MAAM,GAAG,IAAI,CAAC;YACvB,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC;YACT,KAAK,GAAG;gBACN,OAAO,MAAM,GAAG,GAAG,CAAC;YACtB,KAAK,GAAG;gBACN,OAAO,MAAM,GAAG,GAAG,CAAC;YACtB;gBACE,OAAO,MAAM,CAAC;SACjB;IACH,CAAC,CAAC;IAEF,uBAAuB;IACvB,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QACvB,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC;KAC5C;IAED,sBAAsB;IACtB,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QACvB,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;KAC7C;IAED,kCAAkC;IAClC,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACrD,IAAI,WAAW,EAAE;QACf,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;KACpE;IAED,kDAAkD;IAClD,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IACjC,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;AACvC,CAAC;AAjDD,kCAiDC"}
package/dist/test.d.ts CHANGED
@@ -1 +1,2 @@
1
1
  export {};
2
+ //# sourceMappingURL=test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":""}
package/dist/test.js CHANGED
@@ -12,3 +12,17 @@ console.log((0, index_1.toAuto)(1.2, { fixed: 4, trimEndZeros: true }));
12
12
  console.log((0, index_1.toPercent)(0.1234, { fixed: 1, space: " " }));
13
13
  console.log((0, index_1.toPercent)(1.23456, { trimEndZeros: true }));
14
14
  console.log((0, index_1.toPercent)(1.9, { fixed: 4, trimEndZeros: true }));
15
+ // Example usage
16
+ console.log((0, index_1.parseNumber)("50%")); // 0.5
17
+ console.log((0, index_1.parseNumber)("1e3")); // 1000
18
+ console.log((0, index_1.parseNumber)(" 123 ")); // 123
19
+ console.log((0, index_1.parseNumber)("100‰")); // 0.1
20
+ console.log((0, index_1.parseNumber)("5k")); // 5000
21
+ console.log((0, index_1.parseNumber)("3M")); // 3000000
22
+ console.log((0, index_1.parseNumber)("2G")); // 2000000000
23
+ console.log((0, index_1.parseNumber)("1t")); // 1000000000000
24
+ console.log((0, index_1.parseNumber)("1万")); // 10000
25
+ console.log((0, index_1.parseNumber)("1w")); // 10000
26
+ console.log((0, index_1.parseNumber)("1亿")); // 100000000
27
+ console.log((0, index_1.parseNumber)("abc")); // null
28
+ //# sourceMappingURL=test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":";;AAAA,mCAAyD;AAEzD,OAAO,CAAC,GAAG,CAAC,IAAA,cAAM,EAAC,IAAI,CAAC,CAAC,CAAC;AAC1B,OAAO,CAAC,GAAG,CAAC,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC,CAAC;AAC3B,OAAO,CAAC,GAAG,CAAC,IAAA,cAAM,EAAC,SAAS,CAAC,CAAC,CAAC;AAE/B,OAAO,CAAC,GAAG,CAAC,IAAA,cAAM,EAAC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACxC,OAAO,CAAC,GAAG,CAAC,IAAA,cAAM,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACzC,OAAO,CAAC,GAAG,CAAC,IAAA,cAAM,EAAC,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;AACzD,OAAO,CAAC,GAAG,CAAC,IAAA,cAAM,EAAC,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;AAC5E,OAAO,CAAC,GAAG,CAAC,IAAA,cAAM,EAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAE3D,OAAO,CAAC,GAAG,CAAC,IAAA,iBAAS,EAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;AACzD,OAAO,CAAC,GAAG,CAAC,IAAA,iBAAS,EAAC,OAAO,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACxD,OAAO,CAAC,GAAG,CAAC,IAAA,iBAAS,EAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAE9D,gBAAgB;AAChB,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAW,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM;AACvC,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAW,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO;AACxC,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAW,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM;AAC3C,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAW,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM;AACxC,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO;AACvC,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU;AAC1C,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa;AAC7C,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,gBAAgB;AAChD,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ;AACxC,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ;AACxC,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY;AAC5C,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAW,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO"}
package/package.json CHANGED
@@ -1,15 +1,20 @@
1
1
  {
2
2
  "name": "@fnmain/number",
3
- "version": "1.1.0",
3
+ "version": "1.3.0",
4
4
  "description": "number utils",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "scripts": {
8
8
  "build": "tsc",
9
- "test": "tsc && node dist/test.js"
9
+ "test": "tsc && node dist/test.js",
10
+ "pub": "npm run build && npm publish --access public --registry=https://registry.npmjs.org/ && node sync-npmmirror.js "
10
11
  },
11
12
  "author": "DC",
12
13
  "license": "MIT",
14
+ "files": [
15
+ "dist",
16
+ "src"
17
+ ],
13
18
  "devDependencies": {
14
19
  "@types/node": "^20.8.3",
15
20
  "typescript": "^5.2.2"
package/src/index.ts CHANGED
@@ -68,3 +68,54 @@ export function toPercent(
68
68
  ret = trimEndZeros ? trimTrailingZeros(ret) : ret;
69
69
  return ret + space + "%";
70
70
  }
71
+
72
+ export function parseNumber(input: string): number | null {
73
+ // Remove whitespace
74
+ input = input.trim();
75
+
76
+ // Define a helper function to handle suffixes
77
+ const handleSuffix = (number: number, suffix: string): number => {
78
+ switch (suffix.toLowerCase()) {
79
+ case "k":
80
+ return number * 1e3;
81
+ case "m":
82
+ return number * 1e6;
83
+ case "g":
84
+ case "b":
85
+ return number * 1e9;
86
+ case "t":
87
+ return number * 1e12;
88
+ case "万":
89
+ case "萬":
90
+ case "w":
91
+ return number * 1e4;
92
+ case "亿":
93
+ return number * 1e8;
94
+ default:
95
+ return number;
96
+ }
97
+ };
98
+
99
+ // Check for percentage
100
+ if (input.endsWith("%")) {
101
+ const number = parseFloat(input.slice(0, -1));
102
+ return isNaN(number) ? null : number / 100;
103
+ }
104
+
105
+ // Check for per mille
106
+ if (input.endsWith("‰")) {
107
+ const number = parseFloat(input.slice(0, -1));
108
+ return isNaN(number) ? null : number / 1000;
109
+ }
110
+
111
+ // Check for suffixes (k, m, g, t)
112
+ const suffixMatch = input.match(/([kmgKMGtT万萬w亿])$/);
113
+ if (suffixMatch) {
114
+ const number = parseFloat(input.slice(0, -1));
115
+ return isNaN(number) ? null : handleSuffix(number, suffixMatch[0]);
116
+ }
117
+
118
+ // Check for scientific notation and other formats
119
+ const number = parseFloat(input);
120
+ return isNaN(number) ? null : number;
121
+ }
package/src/test.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { toAuto, toPercent } from "./index";
1
+ import { parseNumber, toAuto, toPercent } from "./index";
2
2
 
3
3
  console.log(toAuto(1234));
4
4
  console.log(toAuto(12345));
@@ -13,3 +13,17 @@ console.log(toAuto(1.2, { fixed: 4, trimEndZeros: true }));
13
13
  console.log(toPercent(0.1234, { fixed: 1, space: " " }));
14
14
  console.log(toPercent(1.23456, { trimEndZeros: true }));
15
15
  console.log(toPercent(1.9, { fixed: 4, trimEndZeros: true }));
16
+
17
+ // Example usage
18
+ console.log(parseNumber("50%")); // 0.5
19
+ console.log(parseNumber("1e3")); // 1000
20
+ console.log(parseNumber(" 123 ")); // 123
21
+ console.log(parseNumber("100‰")); // 0.1
22
+ console.log(parseNumber("5k")); // 5000
23
+ console.log(parseNumber("3M")); // 3000000
24
+ console.log(parseNumber("2G")); // 2000000000
25
+ console.log(parseNumber("1t")); // 1000000000000
26
+ console.log(parseNumber("1万")); // 10000
27
+ console.log(parseNumber("1w")); // 10000
28
+ console.log(parseNumber("1亿")); // 100000000
29
+ console.log(parseNumber("abc")); // null
package/tsconfig.json DELETED
@@ -1,14 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "es2016",
4
- "module": "commonjs",
5
- "outDir": "./dist",
6
- "strict": true,
7
- "esModuleInterop": true,
8
- "skipLibCheck": true,
9
- "forceConsistentCasingInFileNames": true,
10
- "declaration": true
11
- },
12
- "include": ["src/**/*.ts"],
13
- "exclude": ["node_modules"]
14
- }