util-helpers 4.16.2 → 4.17.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.
Files changed (259) hide show
  1. package/dist/util-helpers.js +1542 -4040
  2. package/dist/util-helpers.js.map +1 -1
  3. package/dist/util-helpers.min.js +1 -1
  4. package/dist/util-helpers.min.js.map +1 -1
  5. package/esm/ajax.js +50 -146
  6. package/esm/blobToDataURL.js +4 -34
  7. package/esm/bytesToSize.js +12 -37
  8. package/esm/calculateCursorPosition.js +30 -52
  9. package/esm/dataURLToBlob.js +14 -28
  10. package/esm/divide.js +24 -48
  11. package/esm/download.js +83 -164
  12. package/esm/fileReader.js +18 -64
  13. package/esm/filterTree.js +25 -55
  14. package/esm/findTreeNode.js +39 -67
  15. package/esm/findTreeNodes.js +35 -66
  16. package/esm/findTreeSelect.js +38 -74
  17. package/esm/formatBankCard.js +13 -43
  18. package/esm/formatMobile.js +17 -43
  19. package/esm/formatMoney.js +59 -139
  20. package/esm/index.js +55 -130
  21. package/esm/isBankCard.js +22 -57
  22. package/esm/isBusinessLicense.js +32 -78
  23. package/esm/isChinese.js +23 -66
  24. package/esm/isEmail.js +6 -21
  25. package/esm/isHMCard.js +5 -28
  26. package/esm/isIPv4.js +5 -22
  27. package/esm/isIPv6.js +5 -36
  28. package/esm/isIdCard.js +27 -66
  29. package/esm/isMobile.js +5 -20
  30. package/esm/isPassport.js +5 -22
  31. package/esm/isPassword.js +7 -48
  32. package/esm/isPostcode.js +5 -20
  33. package/esm/isPromiseLike.js +3 -18
  34. package/esm/isQQ.js +5 -20
  35. package/esm/isSocialCreditCode.js +28 -83
  36. package/esm/isSwiftCode.js +6 -25
  37. package/esm/isTWCard.js +11 -37
  38. package/esm/isTelephone.js +6 -27
  39. package/esm/isUrl.js +5 -44
  40. package/esm/isVehicle.js +5 -28
  41. package/esm/isWX.js +5 -20
  42. package/esm/listToTree.js +51 -120
  43. package/esm/minus.js +21 -39
  44. package/esm/normalizeString.js +8 -29
  45. package/esm/numberToChinese.js +96 -215
  46. package/esm/padZero.js +14 -36
  47. package/esm/parseIdCard.js +64 -129
  48. package/esm/plus.js +21 -39
  49. package/esm/randomString.js +13 -45
  50. package/esm/replaceChar.js +27 -77
  51. package/esm/round.js +14 -31
  52. package/esm/safeDate.js +12 -55
  53. package/esm/setDataURLPrefix.js +6 -29
  54. package/esm/strlen.js +14 -30
  55. package/esm/times.js +24 -42
  56. package/esm/transformFieldNames.js +37 -93
  57. package/esm/treeToList.js +25 -84
  58. package/esm/utils/config.js +4 -14
  59. package/esm/utils/constants.js +4 -4
  60. package/esm/utils/convertToString.js +4 -9
  61. package/esm/utils/devWarn.js +11 -11
  62. package/esm/utils/math.util.js +95 -181
  63. package/esm/utils/type/isBlob.js +4 -24
  64. package/esm/utils/type/isNaN.js +4 -19
  65. package/esm/utils/type/isNil.js +5 -13
  66. package/esm/utils/type/isNull.js +3 -18
  67. package/esm/utils/type/isNumber.js +4 -28
  68. package/esm/utils/type/isObject.js +4 -23
  69. package/esm/utils/type/isString.js +4 -19
  70. package/esm/utils/type/isSymbol.js +4 -19
  71. package/esm/utils/type/isType.js +3 -12
  72. package/esm/utils/type/isUndefined.js +3 -21
  73. package/esm/validatePassword.js +86 -237
  74. package/esm/waitTime.js +7 -26
  75. package/lib/ajax.js +51 -152
  76. package/lib/blobToDataURL.js +5 -40
  77. package/lib/bytesToSize.js +13 -43
  78. package/lib/calculateCursorPosition.js +32 -58
  79. package/lib/dataURLToBlob.js +15 -34
  80. package/lib/divide.js +26 -60
  81. package/lib/download.js +85 -169
  82. package/lib/fileReader.js +19 -70
  83. package/lib/filterTree.js +27 -66
  84. package/lib/findTreeNode.js +40 -77
  85. package/lib/findTreeNodes.js +36 -76
  86. package/lib/findTreeSelect.js +40 -82
  87. package/lib/formatBankCard.js +15 -50
  88. package/lib/formatMobile.js +19 -50
  89. package/lib/formatMoney.js +60 -150
  90. package/lib/index.js +117 -395
  91. package/lib/isBankCard.js +24 -64
  92. package/lib/isBusinessLicense.js +34 -85
  93. package/lib/isChinese.js +24 -73
  94. package/lib/isEmail.js +7 -27
  95. package/lib/isHMCard.js +7 -35
  96. package/lib/isIPv4.js +7 -29
  97. package/lib/isIPv6.js +7 -43
  98. package/lib/isIdCard.js +29 -73
  99. package/lib/isMobile.js +7 -27
  100. package/lib/isPassport.js +7 -29
  101. package/lib/isPassword.js +9 -55
  102. package/lib/isPostcode.js +7 -27
  103. package/lib/isPromiseLike.js +4 -24
  104. package/lib/isQQ.js +7 -27
  105. package/lib/isSocialCreditCode.js +30 -90
  106. package/lib/isSwiftCode.js +7 -32
  107. package/lib/isTWCard.js +13 -44
  108. package/lib/isTelephone.js +7 -33
  109. package/lib/isUrl.js +6 -49
  110. package/lib/isVehicle.js +7 -35
  111. package/lib/isWX.js +7 -27
  112. package/lib/listToTree.js +53 -131
  113. package/lib/minus.js +23 -51
  114. package/lib/normalizeString.js +10 -36
  115. package/lib/numberToChinese.js +98 -222
  116. package/lib/padZero.js +16 -43
  117. package/lib/parseIdCard.js +65 -138
  118. package/lib/plus.js +23 -51
  119. package/lib/randomString.js +14 -51
  120. package/lib/replaceChar.js +28 -83
  121. package/lib/round.js +15 -37
  122. package/lib/safeDate.js +13 -63
  123. package/lib/setDataURLPrefix.js +7 -35
  124. package/lib/strlen.js +16 -37
  125. package/lib/times.js +26 -53
  126. package/lib/transformFieldNames.js +38 -101
  127. package/lib/treeToList.js +27 -94
  128. package/lib/utils/config.js +6 -23
  129. package/lib/utils/constants.js +3 -11
  130. package/lib/utils/convertToString.js +6 -16
  131. package/lib/utils/devWarn.js +13 -17
  132. package/lib/utils/math.util.js +95 -185
  133. package/lib/utils/type/isBlob.js +6 -31
  134. package/lib/utils/type/isNaN.js +6 -26
  135. package/lib/utils/type/isNil.js +7 -20
  136. package/lib/utils/type/isNull.js +4 -24
  137. package/lib/utils/type/isNumber.js +6 -35
  138. package/lib/utils/type/isObject.js +5 -29
  139. package/lib/utils/type/isString.js +6 -26
  140. package/lib/utils/type/isSymbol.js +6 -26
  141. package/lib/utils/type/isType.js +4 -18
  142. package/lib/utils/type/isUndefined.js +4 -27
  143. package/lib/validatePassword.js +87 -244
  144. package/lib/waitTime.js +8 -32
  145. package/package.json +21 -25
  146. package/types/ajax.d.ts +38 -95
  147. package/types/blobToDataURL.d.ts +2 -2
  148. package/types/bytesToSize.d.ts +7 -6
  149. package/types/calculateCursorPosition.d.ts +10 -9
  150. package/types/dataURLToBlob.d.ts +5 -5
  151. package/types/divide.d.ts +2 -2
  152. package/types/download.d.ts +22 -38
  153. package/types/fileReader.d.ts +35 -2
  154. package/types/filterTree.d.ts +6 -7
  155. package/types/findTreeNode.d.ts +5 -7
  156. package/types/findTreeNodes.d.ts +5 -7
  157. package/types/findTreeSelect.d.ts +5 -7
  158. package/types/formatBankCard.d.ts +8 -5
  159. package/types/formatMobile.d.ts +7 -4
  160. package/types/formatMoney.d.ts +8 -7
  161. package/types/index.d.ts +125 -55
  162. package/types/isBankCard.d.ts +9 -8
  163. package/types/isBusinessLicense.d.ts +8 -5
  164. package/types/isChinese.d.ts +9 -8
  165. package/types/isEmail.d.ts +1 -1
  166. package/types/isHMCard.d.ts +2 -2
  167. package/types/isIPv4.d.ts +1 -1
  168. package/types/isIPv6.d.ts +1 -1
  169. package/types/isIdCard.d.ts +8 -7
  170. package/types/isMobile.d.ts +1 -1
  171. package/types/isPassport.d.ts +2 -2
  172. package/types/isPassword.d.ts +4 -7
  173. package/types/isPostcode.d.ts +1 -1
  174. package/types/isPromiseLike.d.ts +1 -1
  175. package/types/isQQ.d.ts +1 -1
  176. package/types/isSocialCreditCode.d.ts +8 -5
  177. package/types/isSwiftCode.d.ts +2 -2
  178. package/types/isTWCard.d.ts +6 -5
  179. package/types/isTelephone.d.ts +1 -1
  180. package/types/isUrl.d.ts +2 -2
  181. package/types/isVehicle.d.ts +2 -2
  182. package/types/isWX.d.ts +1 -1
  183. package/types/listToTree.d.ts +12 -12
  184. package/types/minus.d.ts +3 -2
  185. package/types/normalizeString.d.ts +2 -2
  186. package/types/numberToChinese.d.ts +13 -12
  187. package/types/padZero.d.ts +2 -2
  188. package/types/parseIdCard.d.ts +17 -56
  189. package/types/plus.d.ts +3 -2
  190. package/types/randomString.d.ts +2 -2
  191. package/types/replaceChar.d.ts +15 -11
  192. package/types/round.d.ts +2 -2
  193. package/types/safeDate.d.ts +24 -2
  194. package/types/setDataURLPrefix.d.ts +5 -5
  195. package/types/strlen.d.ts +1 -1
  196. package/types/times.d.ts +3 -2
  197. package/types/transformFieldNames.d.ts +12 -10
  198. package/types/treeToList.d.ts +1 -1
  199. package/types/utils/config.d.ts +6 -5
  200. package/types/utils/constants.d.ts +2 -2
  201. package/types/utils/convertToString.d.ts +1 -1
  202. package/types/utils/devWarn.d.ts +1 -1
  203. package/types/utils/math.util.d.ts +15 -9
  204. package/types/utils/type/index.d.ts +7 -0
  205. package/types/utils/type/isArguments.d.ts +1 -1
  206. package/types/utils/type/isArray.d.ts +1 -1
  207. package/types/utils/type/isArrayBuffer.d.ts +1 -1
  208. package/types/utils/type/isBlob.d.ts +1 -1
  209. package/types/utils/type/isBoolean.d.ts +1 -1
  210. package/types/utils/type/isDate.d.ts +1 -1
  211. package/types/utils/type/isError.d.ts +1 -1
  212. package/types/utils/type/isFunction.d.ts +1 -1
  213. package/types/utils/type/isMap.d.ts +1 -1
  214. package/types/utils/type/isNaN.d.ts +1 -1
  215. package/types/utils/type/isNil.d.ts +1 -1
  216. package/types/utils/type/isNull.d.ts +1 -1
  217. package/types/utils/type/isNumber.d.ts +1 -1
  218. package/types/utils/type/isObject.d.ts +1 -1
  219. package/types/utils/type/isRegExp.d.ts +1 -1
  220. package/types/utils/type/isSet.d.ts +1 -1
  221. package/types/utils/type/isString.d.ts +1 -1
  222. package/types/utils/type/isSymbol.d.ts +1 -1
  223. package/types/utils/type/isType.d.ts +1 -1
  224. package/types/utils/type/isUndefined.d.ts +1 -1
  225. package/types/utils/type/isWeakMap.d.ts +1 -1
  226. package/types/utils/type/isWeakSet.d.ts +1 -1
  227. package/types/validatePassword.d.ts +17 -48
  228. package/types/waitTime.d.ts +2 -2
  229. package/esm/interface.doc.js +0 -125
  230. package/esm/interface.type.js +0 -17
  231. package/esm/utils/type/index.js +0 -29
  232. package/esm/utils/type/isArguments.js +0 -22
  233. package/esm/utils/type/isArray.js +0 -22
  234. package/esm/utils/type/isArrayBuffer.js +0 -25
  235. package/esm/utils/type/isBoolean.js +0 -22
  236. package/esm/utils/type/isDate.js +0 -22
  237. package/esm/utils/type/isError.js +0 -22
  238. package/esm/utils/type/isFunction.js +0 -22
  239. package/esm/utils/type/isMap.js +0 -22
  240. package/esm/utils/type/isRegExp.js +0 -22
  241. package/esm/utils/type/isSet.js +0 -22
  242. package/esm/utils/type/isWeakMap.js +0 -22
  243. package/esm/utils/type/isWeakSet.js +0 -22
  244. package/lib/interface.doc.js +0 -127
  245. package/lib/interface.type.js +0 -5
  246. package/lib/utils/type/index.js +0 -146
  247. package/lib/utils/type/isArguments.js +0 -29
  248. package/lib/utils/type/isArray.js +0 -29
  249. package/lib/utils/type/isArrayBuffer.js +0 -32
  250. package/lib/utils/type/isBoolean.js +0 -29
  251. package/lib/utils/type/isDate.js +0 -29
  252. package/lib/utils/type/isError.js +0 -29
  253. package/lib/utils/type/isFunction.js +0 -29
  254. package/lib/utils/type/isMap.js +0 -29
  255. package/lib/utils/type/isRegExp.js +0 -29
  256. package/lib/utils/type/isSet.js +0 -29
  257. package/lib/utils/type/isWeakMap.js +0 -29
  258. package/lib/utils/type/isWeakSet.js +0 -29
  259. package/types/interface.type.d.ts +0 -2
@@ -1,204 +1,114 @@
1
- "use strict";
1
+ 'use strict';
2
2
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.checkBoundary = checkBoundary;
7
- exports.digitLength = digitLength;
8
- exports.float2Fixed = float2Fixed;
9
- exports.isScientificNumber = isScientificNumber;
10
- exports.scientificToNumber = scientificToNumber;
11
- exports.strip = strip;
12
- exports.transformEffectiveNumber = transformEffectiveNumber;
13
- exports.trimLeftZero = trimLeftZero;
14
- var _constants = require("./constants");
15
- var _devWarn = _interopRequireDefault(require("./devWarn"));
16
- var _type = require("./type");
17
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
18
- /**
19
- * 参考: https://github.com/nefe/number-precision/blob/master/src/index.ts
20
- *
21
- * 解决浮动运算问题,避免小数点后产生多位数和计算精度损失。
22
- * 问题示例:2.3 + 2.4 = 4.699999999999999,1.0 - 0.9 = 0.09999999999999998
23
- */
3
+ var constants = require('./constants.js');
4
+ var devWarn = require('./devWarn.js');
5
+ var isNumber = require('./type/isNumber.js');
6
+ var isString = require('./type/isString.js');
7
+ var isSymbol = require('./type/isSymbol.js');
24
8
 
25
- /**
26
- * 将值转换为有效数值
27
- *
28
- * @param {*} value 要转换的值
29
- * @returns {number|string} 有效数值
30
- */
31
9
  function transformEffectiveNumber(value) {
32
- /** @type {string|number|undefined} */
33
- var ret;
34
- if ((0, _type.isString)(value)) {
35
- ret = value.trim(); // ' 15' ' 15 ' 兼容 Number(string) 处理
36
-
37
- if (ret === '') {
38
- ret = Number(ret);
39
- } else if (Number.isNaN(Number(ret))) {
40
- // string如果可以转换为number,默认不转换为number类型
41
- ret = Number.NaN;
10
+ var ret;
11
+ if (isString(value)) {
12
+ ret = value.trim();
13
+ if (ret === '') {
14
+ ret = Number(ret);
15
+ }
16
+ else if (Number.isNaN(Number(ret))) {
17
+ ret = Number.NaN;
18
+ }
42
19
  }
43
- } else if ((0, _type.isSymbol)(value)) {
44
- // 例如 Symbol 包装器对象将会报错
45
- // symObj = Object(Symbol());
46
- // Number(symObj); // TypeError: Cannot convert a Symbol value to a number
47
- ret = Number.NaN;
48
- } else if (!(0, _type.isNumber)(value)) {
49
- // 其余非数字类型通过 Number 转换
50
- ret = Number(value);
51
- } else {
52
- ret = value;
53
- }
54
- if (Number.isNaN(ret)) {
55
- return Number.NaN;
56
- }
57
-
58
- // @ts-ignore
59
- return ret;
20
+ else if (isSymbol(value)) {
21
+ ret = Number.NaN;
22
+ }
23
+ else if (!isNumber(value)) {
24
+ ret = Number(value);
25
+ }
26
+ else {
27
+ ret = value;
28
+ }
29
+ if (Number.isNaN(ret)) {
30
+ return Number.NaN;
31
+ }
32
+ return ret;
60
33
  }
61
-
62
- /**
63
- * 是否为科学计数法数字
64
- *
65
- * @param {string} num 检查值
66
- * @returns {boolean}
67
- */
68
34
  function isScientificNumber(num) {
69
- return /\d+\.?\d*e[\+\-]*\d+/i.test(num);
35
+ return /\d+\.?\d*e[+-]*\d+/i.test(num);
70
36
  }
71
-
72
- /**
73
- * 把错误的数据转正
74
- *
75
- * @param {number} num 输入数
76
- * @param {number} [precision=12] 小数点的精度
77
- * @returns {number}
78
- * @example
79
- *
80
- * strip(0.09999999999999998)=0.1
81
- */
82
- function strip(num) {
83
- var precision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 12;
84
- return +parseFloat(num.toPrecision(precision));
37
+ function strip(num, precision) {
38
+ if (precision === void 0) { precision = 12; }
39
+ return +parseFloat(num.toPrecision(precision));
85
40
  }
86
-
87
- /**
88
- * 计算数字的小数点长度,支持科学记数法
89
- *
90
- * @param {number|string} num 输入数
91
- * @returns {number} 小数点长度
92
- */
93
41
  function digitLength(num) {
94
- // Get digit length of e
95
- var eSplit = num.toString().split(/e/i);
96
- var len = (eSplit[0].split('.')[1] || '').length - +(eSplit[1] || 0);
97
- return len > 0 ? len : 0;
42
+ var eSplit = num.toString().split(/e/i);
43
+ var len = (eSplit[0].split('.')[1] || '').length - +(eSplit[1] || 0);
44
+ return len > 0 ? len : 0;
98
45
  }
99
-
100
- /**
101
- * 把小数转成整数,支持科学计数法。如果是小数则放大成整数
102
- *
103
- * @param {number|string} num 输入数
104
- * @returns {number}
105
- */
106
46
  function float2Fixed(num) {
107
- var strNum = String(num);
108
- if (!isScientificNumber(strNum)) {
109
- return Number(strNum.replace('.', ''));
110
- }
111
- var dLen = digitLength(num);
112
- return dLen > 0 ? strip(+num * Math.pow(10, dLen)) : +num;
47
+ var strNum = String(num);
48
+ if (!isScientificNumber(strNum)) {
49
+ return Number(strNum.replace('.', ''));
50
+ }
51
+ var dLen = digitLength(num);
52
+ return dLen > 0 ? strip(+num * Math.pow(10, dLen)) : +num;
113
53
  }
114
-
115
- /**
116
- * 检测数字是否越界,如果越界给出提示
117
- * @param {number} num 输入数
118
- * @returns
119
- */
120
54
  function checkBoundary(num) {
121
- if (+num > _constants.MAX_SAFE_INTEGER || +num < _constants.MIN_SAFE_INTEGER) {
122
- (0, _devWarn["default"])("".concat(num, " is beyond boundary when transfer to integer, the results may not be accurate"));
123
- }
55
+ if (+num > constants.MAX_SAFE_INTEGER || +num < constants.MIN_SAFE_INTEGER) {
56
+ devWarn("".concat(num, " is beyond boundary when transfer to integer, the results may not be accurate"));
57
+ }
124
58
  }
125
-
126
- /**
127
- * 去掉左边数字0
128
- *
129
- * @param {string} num 数字字符串
130
- * @returns {string}
131
- */
132
59
  function trimLeftZero(num) {
133
- var reg = /^([+-])?(0+)([0-9\.]+)$/;
134
- var result = reg.exec(num);
135
- var sign;
136
- if (result) {
137
- sign = result[1] || '';
138
- return sign + (result[3][0] === '.' ? '0' + result[3] : result[3]);
139
- }
140
- return num;
60
+ var reg = /^([+-])?(0+)([0-9.]+)$/;
61
+ var result = reg.exec(num);
62
+ var sign;
63
+ if (result) {
64
+ sign = result[1] || '';
65
+ return sign + (result[3][0] === '.' ? '0' + result[3] : result[3]);
66
+ }
67
+ return num;
141
68
  }
142
-
143
- /**
144
- * 科学计数法转换成普通数字
145
- *
146
- * JavaScript在以下情景会自动将数值转换为科学计数法:
147
- * 1.小数点前的数字个数大于等于22位
148
- * 2.小数点前边是0,小数点后十分位(包含十分位)之后连续零的个数大于等于6个
149
- *
150
- * @param {string | number} num 科学计数法数字
151
- * @returns {string | number} 转换后的数字字符串
152
- */
153
69
  function scientificToNumber(num) {
154
- var strNum = String(num);
155
- if (!isScientificNumber(strNum)) {
156
- return num;
157
- }
158
-
159
- /** @type string */
160
- var ret;
161
- var zero = '0';
162
- var parts = strNum.toLowerCase().split('e');
163
- var e = parts.pop(); // 存储指数
164
- // @ts-ignore
165
- var l = Math.abs(e); // 取绝对值,l-1就是0的个数
166
- // @ts-ignore
167
- var sign = e / l; //判断正负
168
- var coeff_array = parts[0].split('.'); // 将系数按照小数点拆分
169
-
170
- // 如果是小数
171
- if (sign === -1) {
172
- // 整数部分
173
- var intVal = trimLeftZero(coeff_array[0]);
174
-
175
- // 整数部分大于科学计数后面部分
176
- // 如: 10e-1, 10.2e-1
177
- if (intVal.length > l) {
178
- var thanLen = intVal.length - l;
179
- var dec = coeff_array[1] || '';
180
- ret = intVal.slice(0, thanLen);
181
-
182
- // 处理 10e-1, 100e-1
183
- if (intVal.slice(thanLen) !== '0' || dec) {
184
- ret += '.' + intVal.slice(thanLen) + dec;
185
- }
186
- } else {
187
- // 整数部分小于等于科学计数后面部分
188
- // 如: 1e-1, 0.2e-1, 1.2e-2, 1.2e-1
189
- ret = zero + '.' + new Array(l - intVal.length + 1).join(zero) + coeff_array.join('');
70
+ var strNum = String(num);
71
+ if (!isScientificNumber(strNum)) {
72
+ return num;
190
73
  }
191
- } else {
192
- // 小数部分
193
- var _dec = coeff_array[1] || '';
194
-
195
- // 如果是整数,将整数除第一位之外的非零数字计入位数,相应的减少0的个数
196
- if (l - _dec.length < 0) {
197
- ret = trimLeftZero(coeff_array[0] + _dec.substring(0, l)) + '.' + _dec.substring(l);
198
- } else {
199
- // 拼接字符串,如果是整数,不需要拼接小数点
200
- ret = coeff_array.join('') + new Array(l - _dec.length + 1).join(zero);
74
+ var ret;
75
+ var zero = '0';
76
+ var parts = strNum.toLowerCase().split('e');
77
+ var e = parts.pop();
78
+ var l = Math.abs(e);
79
+ var sign = e / l;
80
+ var coeff_array = parts[0].split('.');
81
+ if (sign === -1) {
82
+ var intVal = trimLeftZero(coeff_array[0]);
83
+ if (intVal.length > l) {
84
+ var thanLen = intVal.length - l;
85
+ var dec = coeff_array[1] || '';
86
+ ret = intVal.slice(0, thanLen);
87
+ if (intVal.slice(thanLen) !== '0' || dec) {
88
+ ret += '.' + intVal.slice(thanLen) + dec;
89
+ }
90
+ }
91
+ else {
92
+ ret = zero + '.' + new Array(l - intVal.length + 1).join(zero) + coeff_array.join('');
93
+ }
94
+ }
95
+ else {
96
+ var dec = coeff_array[1] || '';
97
+ if (l - dec.length < 0) {
98
+ ret = trimLeftZero(coeff_array[0] + dec.substring(0, l)) + '.' + dec.substring(l);
99
+ }
100
+ else {
101
+ ret = coeff_array.join('') + new Array(l - dec.length + 1).join(zero);
102
+ }
201
103
  }
202
- }
203
- return trimLeftZero(ret);
204
- }
104
+ return trimLeftZero(ret);
105
+ }
106
+
107
+ exports.checkBoundary = checkBoundary;
108
+ exports.digitLength = digitLength;
109
+ exports.float2Fixed = float2Fixed;
110
+ exports.isScientificNumber = isScientificNumber;
111
+ exports.scientificToNumber = scientificToNumber;
112
+ exports.strip = strip;
113
+ exports.transformEffectiveNumber = transformEffectiveNumber;
114
+ exports.trimLeftZero = trimLeftZero;
@@ -1,34 +1,9 @@
1
- "use strict";
1
+ 'use strict';
2
+
3
+ var isType = require('./isType.js');
2
4
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
- var _isType = _interopRequireDefault(require("./isType"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
9
- /**
10
- * 检查值是否为Blob对象<br/><br/>
11
- *
12
- * <em style="font-weight: bold;">注意:该方法仅适用于浏览器端。</em>
13
- *
14
- * @static
15
- * @alias module:Type.isBlob
16
- * @since 4.16.0
17
- * @param {*} value 检查值
18
- * @returns {boolean} 是否为Blob对象
19
- * @example
20
- *
21
- * isBlob(new Blob(['a']))
22
- * // => true
23
- *
24
- * isBlob({})
25
- * // => false
26
- *
27
- * isBlob('2012')
28
- * // => false
29
- */
30
5
  function isBlob(value) {
31
- return (0, _isType["default"])(value, 'Blob');
6
+ return isType(value, 'Blob');
32
7
  }
33
- var _default = isBlob;
34
- exports["default"] = _default;
8
+
9
+ module.exports = isBlob;
@@ -1,29 +1,9 @@
1
- "use strict";
1
+ 'use strict';
2
+
3
+ var isType = require('./isType.js');
2
4
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
- var _isType = _interopRequireDefault(require("./isType"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
9
- /**
10
- * 检查值是否为NaN
11
- *
12
- * @static
13
- * @alias module:Type.isNaN
14
- * @since 1.1.0
15
- * @param {*} value 检查值
16
- * @returns {boolean} 是否为NaN
17
- * @example
18
- *
19
- * isNaN(NaN)
20
- * // => true
21
- *
22
- * isNaN(1)
23
- * // => false
24
- */
25
5
  function _isNaN(value) {
26
- return (0, _isType["default"])(value, 'Number') && isNaN(value);
6
+ return isType(value, 'Number') && isNaN(value);
27
7
  }
28
- var _default = _isNaN;
29
- exports["default"] = _default;
8
+
9
+ module.exports = _isNaN;
@@ -1,23 +1,10 @@
1
- "use strict";
1
+ 'use strict';
2
+
3
+ var isUndefined = require('./isUndefined.js');
4
+ var isNull = require('./isNull.js');
2
5
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
- var _isUndefined = _interopRequireDefault(require("./isUndefined"));
8
- var _isNull = _interopRequireDefault(require("./isNull"));
9
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
10
- /**
11
- * 检查值是否为 undefined 或 null
12
- *
13
- * @static
14
- * @alias module:Type.isNaN
15
- * @since 4.3.0
16
- * @param {*} value 检查值
17
- * @returns {boolean} 是否为 undefined 或 null
18
- */
19
6
  function isNil(value) {
20
- return (0, _isUndefined["default"])(value) || (0, _isNull["default"])(value);
7
+ return isUndefined(value) || isNull(value);
21
8
  }
22
- var _default = isNil;
23
- exports["default"] = _default;
9
+
10
+ module.exports = isNil;
@@ -1,27 +1,7 @@
1
- "use strict";
1
+ 'use strict';
2
2
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
- /**
8
- * 检查值是否为Null
9
- *
10
- * @static
11
- * @alias module:Type.isNull
12
- * @since 1.1.0
13
- * @param {*} value 检查值
14
- * @returns {boolean} 是否为Null
15
- * @example
16
- *
17
- * isNull(null)
18
- * // => true
19
- *
20
- * isNull(void 0)
21
- * // => false
22
- */
23
3
  function isNull(value) {
24
- return value === null;
4
+ return value === null;
25
5
  }
26
- var _default = isNull;
27
- exports["default"] = _default;
6
+
7
+ module.exports = isNull;
@@ -1,38 +1,9 @@
1
- "use strict";
1
+ 'use strict';
2
+
3
+ var isType = require('./isType.js');
2
4
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
- var _isType = _interopRequireDefault(require("./isType"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
9
- /**
10
- * 检查值是否为Number
11
- *
12
- * @static
13
- * @alias module:Type.isNumber
14
- * @since 1.1.0
15
- * @param {*} value 检查值
16
- * @returns {boolean} 是否为Number
17
- * @example
18
- *
19
- * isNumber(1)
20
- * // => true
21
- *
22
- * isNumber(Number.MIN_VALUE)
23
- * // => true
24
- *
25
- * isNumber(Infinity)
26
- * // => true
27
- *
28
- * isNumber(NaN)
29
- * // => true
30
- *
31
- * isNumber('1')
32
- * // => false
33
- */
34
5
  function isNumber(value) {
35
- return (0, _isType["default"])(value, 'Number');
6
+ return isType(value, 'Number');
36
7
  }
37
- var _default = isNumber;
38
- exports["default"] = _default;
8
+
9
+ module.exports = isNumber;
@@ -1,32 +1,8 @@
1
- "use strict";
1
+ 'use strict';
2
2
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
8
- /**
9
- * 检查值是否为Object
10
- *
11
- * @static
12
- * @alias module:Type.isObject
13
- * @since 1.1.0
14
- * @param {*} value 检查值
15
- * @returns {boolean} 是否为Object
16
- * @example
17
- *
18
- * isObject({})
19
- * // => true
20
- *
21
- * isObject([1,2,3])
22
- * // => true
23
- *
24
- * isObject(null)
25
- * // => false
26
- */
27
3
  function isObject(value) {
28
- var type = _typeof(value);
29
- return value != null && (type === 'object' || type === 'function');
4
+ var type = typeof value;
5
+ return value != null && (type === 'object' || type === 'function');
30
6
  }
31
- var _default = isObject;
32
- exports["default"] = _default;
7
+
8
+ module.exports = isObject;
@@ -1,29 +1,9 @@
1
- "use strict";
1
+ 'use strict';
2
+
3
+ var isType = require('./isType.js');
2
4
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
- var _isType = _interopRequireDefault(require("./isType"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
9
- /**
10
- * 检查值是否为String
11
- *
12
- * @static
13
- * @alias module:Type.isString
14
- * @since 1.1.0
15
- * @param {*} value 检查值
16
- * @returns {boolean} 是否为String
17
- * @example
18
- *
19
- * isString('abc')
20
- * // => true
21
- *
22
- * isString(1)
23
- * // => false
24
- */
25
5
  function isString(value) {
26
- return (0, _isType["default"])(value, 'String');
6
+ return isType(value, 'String');
27
7
  }
28
- var _default = isString;
29
- exports["default"] = _default;
8
+
9
+ module.exports = isString;
@@ -1,29 +1,9 @@
1
- "use strict";
1
+ 'use strict';
2
+
3
+ var isType = require('./isType.js');
2
4
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
- var _isType = _interopRequireDefault(require("./isType"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
9
- /**
10
- * 检查值是否为Symbol
11
- *
12
- * @static
13
- * @alias module:Type.isSymbol
14
- * @since 1.1.0
15
- * @param {*} value 检查值
16
- * @returns {boolean} 是否为Symbol
17
- * @example
18
- *
19
- * isSymbol(Symbol.iterator)
20
- * // => true
21
- *
22
- * isSymbol("abc")
23
- * // => false
24
- */
25
5
  function isSymbol(value) {
26
- return (0, _isType["default"])(value, 'Symbol');
6
+ return isType(value, 'Symbol');
27
7
  }
28
- var _default = isSymbol;
29
- exports["default"] = _default;
8
+
9
+ module.exports = isSymbol;
@@ -1,22 +1,8 @@
1
- "use strict";
1
+ 'use strict';
2
2
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
3
  var toString = Object.prototype.toString;
8
-
9
- /**
10
- * 检测值的 `toString` 类型
11
- *
12
- * @private
13
- * @since 1.1.0
14
- * @param {*} value 检查值
15
- * @param {string} typename 类型名称
16
- * @returns {boolean} 返回值的 `toString` 类型是否匹配
17
- */
18
4
  function isType(value, typename) {
19
- return toString.call(value) === "[object ".concat(typename, "]");
5
+ return toString.call(value) === "[object ".concat(typename, "]");
20
6
  }
21
- var _default = isType;
22
- exports["default"] = _default;
7
+
8
+ module.exports = isType;
@@ -1,30 +1,7 @@
1
- "use strict";
1
+ 'use strict';
2
2
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports["default"] = void 0;
7
- /**
8
- * 检查值是否为Undefined
9
- *
10
- * @static
11
- * @alias module:Type.isUndefined
12
- * @since 1.1.0
13
- * @param {*} value 检查值
14
- * @returns {boolean} 是否为Undefined
15
- * @example
16
- *
17
- * isUndefined(undefined)
18
- * // => true
19
- *
20
- * isUndefined(void 0)
21
- * // => true
22
- *
23
- * isUndefined(null)
24
- * // => false
25
- */
26
3
  function isUndefined(value) {
27
- return value === void 0;
4
+ return value === void 0;
28
5
  }
29
- var _default = isUndefined;
30
- exports["default"] = _default;
6
+
7
+ module.exports = isUndefined;