ut2 1.9.2 → 1.9.4

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 (119) hide show
  1. package/dist/ut2.js +11 -16
  2. package/dist/ut2.js.map +1 -1
  3. package/dist/ut2.min.js +1 -1
  4. package/dist/ut2.min.js.map +1 -1
  5. package/es/internals/helpers.js +1 -1
  6. package/es/internals/native.js +1 -2
  7. package/es/isBuffer.js +2 -5
  8. package/es/isObject.js +3 -2
  9. package/es/isTypedArray.js +2 -3
  10. package/es/uniqueId.js +3 -1
  11. package/lib/internals/helpers.js +1 -1
  12. package/lib/internals/native.js +0 -2
  13. package/lib/isBuffer.js +2 -5
  14. package/lib/isObject.js +3 -2
  15. package/lib/isTypedArray.js +2 -3
  16. package/lib/uniqueId.js +3 -1
  17. package/package.json +18 -18
  18. package/types/after.d.ts +1 -1
  19. package/types/ceil.d.ts +2 -2
  20. package/types/chunk.d.ts +1 -1
  21. package/types/clamp.d.ts +3 -3
  22. package/types/conforms.d.ts +1 -1
  23. package/types/conformsTo.d.ts +2 -2
  24. package/types/countBy.d.ts +1 -1
  25. package/types/curry.d.ts +1 -1
  26. package/types/debounce.d.ts +2 -2
  27. package/types/defaultTo.d.ts +2 -2
  28. package/types/delay.d.ts +2 -3
  29. package/types/difference.d.ts +3 -3
  30. package/types/eq.d.ts +2 -2
  31. package/types/escapeRegExp.d.ts +1 -1
  32. package/types/every.d.ts +4 -4
  33. package/types/filter.d.ts +2 -2
  34. package/types/find.d.ts +3 -3
  35. package/types/floor.d.ts +2 -2
  36. package/types/forEach.d.ts +3 -3
  37. package/types/forEachRight.d.ts +3 -3
  38. package/types/groupBy.d.ts +2 -2
  39. package/types/gt.d.ts +2 -2
  40. package/types/gte.d.ts +2 -2
  41. package/types/identity.d.ts +1 -1
  42. package/types/inRange.d.ts +3 -3
  43. package/types/internals/getTag.d.ts +1 -1
  44. package/types/internals/isEqualDeep.d.ts +3 -3
  45. package/types/internals/native.d.ts +2 -3
  46. package/types/intersection.d.ts +3 -3
  47. package/types/invert.d.ts +2 -1
  48. package/types/isArguments.d.ts +1 -1
  49. package/types/isArray.d.ts +1 -1
  50. package/types/isArrayBuffer.d.ts +1 -1
  51. package/types/isArrayLike.d.ts +1 -1
  52. package/types/isArrayLikeObject.d.ts +6 -2
  53. package/types/isBigInt.d.ts +1 -1
  54. package/types/isBlob.d.ts +2 -2
  55. package/types/isBoolean.d.ts +1 -1
  56. package/types/isBuffer.d.ts +3 -4
  57. package/types/isDataView.d.ts +1 -1
  58. package/types/isDate.d.ts +1 -1
  59. package/types/isElement.d.ts +2 -2
  60. package/types/isEmpty.d.ts +1 -1
  61. package/types/isEqual.d.ts +3 -3
  62. package/types/isError.d.ts +3 -3
  63. package/types/isFinite.d.ts +2 -2
  64. package/types/isFunction.d.ts +3 -3
  65. package/types/isInteger.d.ts +2 -2
  66. package/types/isLength.d.ts +1 -1
  67. package/types/isMap.d.ts +1 -1
  68. package/types/isMatch.d.ts +3 -3
  69. package/types/isNaN.d.ts +2 -2
  70. package/types/isNil.d.ts +2 -2
  71. package/types/isNull.d.ts +2 -2
  72. package/types/isNumber.d.ts +1 -1
  73. package/types/isObject.d.ts +3 -2
  74. package/types/isObjectLike.d.ts +2 -2
  75. package/types/isPlainObject.d.ts +2 -2
  76. package/types/isPromiseLike.d.ts +7 -2
  77. package/types/isRegExp.d.ts +1 -1
  78. package/types/isSafeInteger.d.ts +2 -2
  79. package/types/isSet.d.ts +1 -1
  80. package/types/isString.d.ts +1 -1
  81. package/types/isSymbol.d.ts +1 -1
  82. package/types/isTypedArray.d.ts +1 -1
  83. package/types/isUndefined.d.ts +2 -2
  84. package/types/isWeakMap.d.ts +1 -1
  85. package/types/isWeakSet.d.ts +1 -1
  86. package/types/keyBy.d.ts +2 -2
  87. package/types/keys.d.ts +1 -1
  88. package/types/keysIn.d.ts +1 -1
  89. package/types/lt.d.ts +2 -2
  90. package/types/lte.d.ts +2 -2
  91. package/types/map.d.ts +2 -2
  92. package/types/max.d.ts +1 -1
  93. package/types/merge.d.ts +4 -4
  94. package/types/min.d.ts +1 -1
  95. package/types/noop.d.ts +1 -1
  96. package/types/nth.d.ts +1 -1
  97. package/types/nthArg.d.ts +1 -1
  98. package/types/omitBy.d.ts +3 -2
  99. package/types/orderBy.d.ts +1 -1
  100. package/types/partial.d.ts +1 -1
  101. package/types/partition.d.ts +5 -3
  102. package/types/pickBy.d.ts +3 -2
  103. package/types/random.d.ts +2 -2
  104. package/types/randomInt.d.ts +3 -3
  105. package/types/range.d.ts +3 -3
  106. package/types/reduce.d.ts +2 -2
  107. package/types/reduceRight.d.ts +2 -2
  108. package/types/round.d.ts +2 -2
  109. package/types/sleep.d.ts +1 -1
  110. package/types/some.d.ts +4 -4
  111. package/types/throttle.d.ts +2 -2
  112. package/types/times.d.ts +2 -2
  113. package/types/toInteger.d.ts +1 -1
  114. package/types/toString.d.ts +1 -1
  115. package/types/union.d.ts +2 -2
  116. package/types/uniq.d.ts +2 -2
  117. package/types/uniqueId.d.ts +2 -2
  118. package/types/words.d.ts +1 -1
  119. package/types/xor.d.ts +3 -3
@@ -1,7 +1,7 @@
1
1
  import getTag from './getTag.js';
2
2
  import { argumentsTag, functionProtoToString } from './native.js';
3
3
 
4
- var VERSION = "1.9.2";
4
+ var VERSION = "1.9.4";
5
5
  var supportedArgumentsType = getTag((function () { return arguments; })()) === argumentsTag;
6
6
  var FUNC_ERROR_TEXT = 'Expected a function';
7
7
  function toSource(func) {
@@ -40,7 +40,6 @@ var errorTag = '[object Error]';
40
40
  var arrayBufferTag = '[object ArrayBuffer]';
41
41
  var argumentsTag = '[object Arguments]';
42
42
  var arrayTag = '[object Array]';
43
- var typedArrayTags = ['Float32Array', 'Float64Array', 'Int8Array', 'Int16Array', 'Int32Array', 'Uint8Array', 'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'BigInt64Array', 'BigUint64Array'].map(function (item) { return '[object ' + item + ']'; });
44
43
  var functionTags = ['Function', 'AsyncFunction', 'GeneratorFunction', 'Proxy'].map(function (item) { return '[object ' + item + ']'; });
45
44
  var weakSetTag = '[object WeakSet]';
46
45
  var blobTag = '[object Blob]';
@@ -52,4 +51,4 @@ var promiseTag = '[object Promise]';
52
51
  var setTag = '[object Set]';
53
52
  var weakMapTag = '[object WeakMap]';
54
53
 
55
- export { MAX_ARRAY_LENGTH, MAX_SAFE_INTEGER, MIN_SAFE_INTEGER, argumentsTag, arrayBufferTag, arrayProto, arrayProtoSlice, arrayTag, bigIntTag, blobTag, booleanTag, dataViewTag, dateTag, domExceptionTag, errorTag, functionProto, functionProtoToString, functionTags, globalExisted, globalThisExisted, mapTag, mathAbs, mathCeil, mathFloor, mathMax, mathMin, mathRandom, nativeUndefined, numberIsFinite, numberIsInteger, numberIsSafeInteger, numberTag, objectGetOwnPropertySymbols, objectGetPrototypeOf, objectKeys, objectProto, objectProtoHasOwnProperty, objectProtoPropertyIsEnumerable, objectProtoToString, objectTag, promiseTag, regExpTag, selfExisted, setTag, stringObject, stringTag, stringUndefined, symbolProto, symbolTag, typedArrayTags, weakMapTag, weakSetTag };
54
+ export { MAX_ARRAY_LENGTH, MAX_SAFE_INTEGER, MIN_SAFE_INTEGER, argumentsTag, arrayBufferTag, arrayProto, arrayProtoSlice, arrayTag, bigIntTag, blobTag, booleanTag, dataViewTag, dateTag, domExceptionTag, errorTag, functionProto, functionProtoToString, functionTags, globalExisted, globalThisExisted, mapTag, mathAbs, mathCeil, mathFloor, mathMax, mathMin, mathRandom, nativeUndefined, numberIsFinite, numberIsInteger, numberIsSafeInteger, numberTag, objectGetOwnPropertySymbols, objectGetPrototypeOf, objectKeys, objectProto, objectProtoHasOwnProperty, objectProtoPropertyIsEnumerable, objectProtoToString, objectTag, promiseTag, regExpTag, selfExisted, setTag, stringObject, stringTag, stringUndefined, symbolProto, symbolTag, weakMapTag, weakSetTag };
package/es/isBuffer.js CHANGED
@@ -1,9 +1,6 @@
1
1
  function isBuffer(value) {
2
- if (typeof Buffer === 'function') {
3
- var isBuffer_1 = Buffer.isBuffer;
4
- if (typeof isBuffer_1 === 'function') {
5
- return isBuffer_1(value);
6
- }
2
+ if (typeof Buffer === 'function' && typeof Buffer.isBuffer === 'function') {
3
+ return Buffer.isBuffer(value);
7
4
  }
8
5
  return false;
9
6
  }
package/es/isObject.js CHANGED
@@ -1,6 +1,7 @@
1
+ import isObjectLike from './isObjectLike.js';
2
+
1
3
  function isObject(value) {
2
- var type = typeof value;
3
- return type === 'function' || (type === 'object' && !!value);
4
+ return typeof value === 'function' || isObjectLike(value);
4
5
  }
5
6
 
6
7
  export { isObject as default };
@@ -1,16 +1,15 @@
1
1
  import getTag from './internals/getTag.js';
2
- import { typedArrayTags } from './internals/native.js';
3
2
  import { nodeIsTypedArray } from './internals/nodeUtil.js';
4
3
  import isLength from './isLength.js';
5
4
  import isObjectLike from './isObjectLike.js';
6
5
 
6
+ var typedArrayPattern = /\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;
7
7
  function isTypedArray(value) {
8
8
  if (nodeIsTypedArray) {
9
9
  return nodeIsTypedArray(value);
10
10
  }
11
11
  if (isObjectLike(value) && isLength(value.length)) {
12
- var tag_1 = getTag(value);
13
- return typedArrayTags.some(function (item) { return item === tag_1; });
12
+ return typedArrayPattern.test(getTag(value));
14
13
  }
15
14
  return false;
16
15
  }
package/es/uniqueId.js CHANGED
@@ -1,5 +1,7 @@
1
+ import { mathRandom } from './internals/native.js';
2
+
1
3
  var idCounter = 0;
2
- var defaultPrefix = '_' + Math.random().toString(36).substring(2, 4);
4
+ var defaultPrefix = '_' + mathRandom().toString(36).substring(2, 4);
3
5
  function uniqueId(prefix) {
4
6
  if (prefix === void 0) { prefix = defaultPrefix; }
5
7
  return '' + prefix + ++idCounter;
@@ -3,7 +3,7 @@
3
3
  var getTag = require('./getTag.js');
4
4
  var native = require('./native.js');
5
5
 
6
- var VERSION = "1.9.2";
6
+ var VERSION = "1.9.4";
7
7
  var supportedArgumentsType = getTag((function () { return arguments; })()) === native.argumentsTag;
8
8
  var FUNC_ERROR_TEXT = 'Expected a function';
9
9
  function toSource(func) {
@@ -42,7 +42,6 @@ var errorTag = '[object Error]';
42
42
  var arrayBufferTag = '[object ArrayBuffer]';
43
43
  var argumentsTag = '[object Arguments]';
44
44
  var arrayTag = '[object Array]';
45
- var typedArrayTags = ['Float32Array', 'Float64Array', 'Int8Array', 'Int16Array', 'Int32Array', 'Uint8Array', 'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'BigInt64Array', 'BigUint64Array'].map(function (item) { return '[object ' + item + ']'; });
46
45
  var functionTags = ['Function', 'AsyncFunction', 'GeneratorFunction', 'Proxy'].map(function (item) { return '[object ' + item + ']'; });
47
46
  var weakSetTag = '[object WeakSet]';
48
47
  var blobTag = '[object Blob]';
@@ -103,6 +102,5 @@ exports.stringTag = stringTag;
103
102
  exports.stringUndefined = stringUndefined;
104
103
  exports.symbolProto = symbolProto;
105
104
  exports.symbolTag = symbolTag;
106
- exports.typedArrayTags = typedArrayTags;
107
105
  exports.weakMapTag = weakMapTag;
108
106
  exports.weakSetTag = weakSetTag;
package/lib/isBuffer.js CHANGED
@@ -1,11 +1,8 @@
1
1
  'use strict';
2
2
 
3
3
  function isBuffer(value) {
4
- if (typeof Buffer === 'function') {
5
- var isBuffer_1 = Buffer.isBuffer;
6
- if (typeof isBuffer_1 === 'function') {
7
- return isBuffer_1(value);
8
- }
4
+ if (typeof Buffer === 'function' && typeof Buffer.isBuffer === 'function') {
5
+ return Buffer.isBuffer(value);
9
6
  }
10
7
  return false;
11
8
  }
package/lib/isObject.js CHANGED
@@ -1,8 +1,9 @@
1
1
  'use strict';
2
2
 
3
+ var isObjectLike = require('./isObjectLike.js');
4
+
3
5
  function isObject(value) {
4
- var type = typeof value;
5
- return type === 'function' || (type === 'object' && !!value);
6
+ return typeof value === 'function' || isObjectLike(value);
6
7
  }
7
8
 
8
9
  module.exports = isObject;
@@ -1,18 +1,17 @@
1
1
  'use strict';
2
2
 
3
3
  var getTag = require('./internals/getTag.js');
4
- var native = require('./internals/native.js');
5
4
  var nodeUtil = require('./internals/nodeUtil.js');
6
5
  var isLength = require('./isLength.js');
7
6
  var isObjectLike = require('./isObjectLike.js');
8
7
 
8
+ var typedArrayPattern = /\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;
9
9
  function isTypedArray(value) {
10
10
  if (nodeUtil.nodeIsTypedArray) {
11
11
  return nodeUtil.nodeIsTypedArray(value);
12
12
  }
13
13
  if (isObjectLike(value) && isLength(value.length)) {
14
- var tag_1 = getTag(value);
15
- return native.typedArrayTags.some(function (item) { return item === tag_1; });
14
+ return typedArrayPattern.test(getTag(value));
16
15
  }
17
16
  return false;
18
17
  }
package/lib/uniqueId.js CHANGED
@@ -1,7 +1,9 @@
1
1
  'use strict';
2
2
 
3
+ var native = require('./internals/native.js');
4
+
3
5
  var idCounter = 0;
4
- var defaultPrefix = '_' + Math.random().toString(36).substring(2, 4);
6
+ var defaultPrefix = '_' + native.mathRandom().toString(36).substring(2, 4);
5
7
  function uniqueId(prefix) {
6
8
  if (prefix === void 0) { prefix = defaultPrefix; }
7
9
  return '' + prefix + ++idCounter;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ut2",
3
- "version": "1.9.2",
3
+ "version": "1.9.4",
4
4
  "author": "caijf",
5
5
  "license": "MIT",
6
6
  "main": "lib/index.js",
@@ -20,7 +20,7 @@
20
20
  "build:doc": "npm run doc",
21
21
  "doc": "rm -rf docs && rm -rf docs-src && tsc -p tsconfig.build.json -t esnext --outDir docs-src && jsdoc -c conf.json && rm -rf docs-src",
22
22
  "doc:open": "open ./docs/index.html",
23
- "lint": "eslint --ext .js,.jsx,.ts,.tsx",
23
+ "lint": "eslint . --ext .js,.jsx,.ts,.tsx",
24
24
  "lint:fix": "npm run lint:js -- --fix",
25
25
  "prettier": "prettier --write **/*",
26
26
  "commit": "cz",
@@ -61,36 +61,36 @@
61
61
  "registry": "https://registry.npmjs.org/"
62
62
  },
63
63
  "devDependencies": {
64
- "@commitlint/cli": "^19.2.1",
65
- "@commitlint/config-conventional": "^19.1.0",
64
+ "@commitlint/cli": "^19.3.0",
65
+ "@commitlint/config-conventional": "^19.2.2",
66
66
  "@commitlint/cz-commitlint": "^19.2.0",
67
- "@rollup/plugin-commonjs": "^25.0.7",
67
+ "@rollup/plugin-commonjs": "^25.0.8",
68
68
  "@rollup/plugin-node-resolve": "^15.2.3",
69
- "@rollup/plugin-replace": "^5.0.5",
69
+ "@rollup/plugin-replace": "^5.0.7",
70
70
  "@rollup/plugin-terser": "^0.4.4",
71
71
  "@rollup/plugin-typescript": "^11.1.6",
72
72
  "@types/jest": "^29.5.12",
73
- "@types/node": "^20.11.30",
74
- "@typescript-eslint/eslint-plugin": "^7.3.1",
75
- "@typescript-eslint/parser": "^7.3.1",
73
+ "@types/node": "^20.14.9",
74
+ "@typescript-eslint/eslint-plugin": "^7.14.1",
75
+ "@typescript-eslint/parser": "^7.14.1",
76
76
  "benchmark": "^2.1.4",
77
77
  "commitizen": "^4.3.0",
78
78
  "cross-env": "^7.0.3",
79
- "dayjs": "^1.11.10",
79
+ "dayjs": "^1.11.11",
80
80
  "docdash": "^2.0.2",
81
81
  "eslint": "^8.57.0",
82
82
  "husky": "^9.0.11",
83
- "inquirer": "9",
83
+ "inquirer": "^9.3.2",
84
84
  "jest": "^29.7.0",
85
85
  "jest-environment-jsdom": "^29.7.0",
86
- "jsdoc": "^4.0.2",
87
- "lint-staged": "^15.2.2",
86
+ "jsdoc": "^4.0.3",
87
+ "lint-staged": "^15.2.7",
88
88
  "lodash": "^4.17.21",
89
- "prettier": "^3.2.5",
90
- "rollup": "^4.13.0",
91
- "ts-jest": "^29.1.2",
92
- "tslib": "^2.6.2",
93
- "typescript": "^5.4.3",
89
+ "prettier": "^3.3.2",
90
+ "rollup": "^4.18.0",
91
+ "ts-jest": "^29.1.5",
92
+ "tslib": "^2.6.3",
93
+ "typescript": "^5.5.2",
94
94
  "underscore": "^1.13.6"
95
95
  },
96
96
  "engines": {
package/types/after.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { FunctionAny } from './internals/types';
2
2
  /**
3
- * 创建一个函数,当它被调用 `n` 或更多次之后触发 `func` 。
3
+ * 创建一个函数,当它被调用 `n` 或更多次之后触发 `func`。
4
4
  *
5
5
  * @static
6
6
  * @alias module:Function.after
package/types/ceil.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 根据精度向上舍入 `number` 。
2
+ * 根据精度向上舍入 `number`。
3
3
  *
4
4
  * 注:精度可以理解为保留几位小数。
5
5
  *
@@ -8,7 +8,7 @@
8
8
  * @since 1.0.0
9
9
  * @see {@link https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Math/round#小数舍入 小数舍入}
10
10
  * @param {number} number 要向上舍入的值。
11
- * @param {number} [precision=0] 向上舍入的精度。
11
+ * @param {number} [precision=0] 向上舍入的精度。默认 `0`。
12
12
  * @returns {number} 向上舍入的值。
13
13
  * @example
14
14
  *
package/types/chunk.d.ts CHANGED
@@ -7,7 +7,7 @@
7
7
  * @alias module:Array.chunk
8
8
  * @since 1.0.0
9
9
  * @param {Array} array 要处理的数组。
10
- * @param {number} [size=1] 每个数组区块的长度。
10
+ * @param {number} [size=1] 每个数组区块的长度。默认 `1`。
11
11
  * @returns {Array} 拆分区块的新数组。
12
12
  * @example
13
13
  *
package/types/clamp.d.ts CHANGED
@@ -9,9 +9,9 @@ interface Clamp {
9
9
  * @alias module:Number.clamp
10
10
  * @since 1.0.0
11
11
  * @param {number} number 被限制的值。
12
- * @param {number} [lower] 下限。
13
- * @param {number} upper 上限。
14
- * @returns {number} 被限制的值。
12
+ * @param {number} [lower] 下限。默认 `0`。
13
+ * @param {number} upper 上限。默认 `0`。
14
+ * @returns {number} 限制后的值。
15
15
  * @example
16
16
  *
17
17
  * clamp(-10, -5, 5); // -5
@@ -4,7 +4,7 @@ interface ConformsFunction {
4
4
  (source: object): (object: any) => boolean;
5
5
  }
6
6
  /**
7
- * 创建一个函数,调用 `source` 的属性名对应的断言函数与传入对象相对应属性名的值进行断言处理。如果都符合返回 `true`,否则返回 `false` 。
7
+ * 创建一个函数,调用 `source` 的属性名对应的断言函数与传入对象相对应属性名的值进行断言处理。如果都符合返回 `true`,否则返回 `false`。
8
8
  *
9
9
  * @function
10
10
  * @alias module:Util.conforms
@@ -4,14 +4,14 @@ interface ConformsTo {
4
4
  (object: WithNullable<object>, source: Record<PropertyName, (value: any) => boolean>): boolean;
5
5
  }
6
6
  /**
7
- * 通过调用断言 `source` 的属性与 `object` 的相应属性值,检查 `object` 是否符合 `source` 。
7
+ * 通过调用断言 `source` 的属性与 `object` 的相应属性值,检查 `object` 是否符合 `source`。
8
8
  *
9
9
  * @function
10
10
  * @alias module:Util.conformsTo
11
11
  * @since 1.0.0
12
12
  * @param {Object} object 要检查的对象。
13
13
  * @param {Object} source 要断言属性是否符合的对象。
14
- * @returns {boolean} 如果 `object` 符合,返回 `true` ,否则返回 `false` 。
14
+ * @returns {boolean} 如果 `object` 符合,返回 `true`,否则返回 `false`。
15
15
  * @example
16
16
  *
17
17
  * const object = { a: 1, b: 2 }
@@ -8,7 +8,7 @@ interface CountBy {
8
8
  /**
9
9
  * 创建一个组成对象, `key` 是经过 `iteratee` 执行处理 `collection` 中每个元素后返回的结果,每个 `key` 对应的值是 `iteratee` 返回该 `key` 的次数。
10
10
  *
11
- * `iteratee` 调用时会传入三个参数 `value` `index|key` `collection` 。
11
+ * `iteratee` 调用时会传入三个参数 `value` `index|key` `collection`。
12
12
  *
13
13
  * @function
14
14
  * @alias module:Collection.countBy
package/types/curry.d.ts CHANGED
@@ -98,7 +98,7 @@ interface CurriedFunction5<T1, T2, T3, T4, T5, R> {
98
98
  * @alias module:Function.curry
99
99
  * @since 1.8.0
100
100
  * @param {Function} func 需要柯里化的函数。
101
- * @param {number} [arity] 指定参数数量,默认值为 `func.length`。
101
+ * @param {number} [arity] 指定参数数量。默认值为 `func.length`。
102
102
  * @returns {Function} 新的柯里化函数。
103
103
  * @example
104
104
  *
@@ -11,8 +11,8 @@ import { FunctionAny } from './internals/types';
11
11
  * @alias module:Function.debounce
12
12
  * @since 1.0.0
13
13
  * @param {Function} func 要防抖动的函数。
14
- * @param {number} [wait=0] 需要延迟的毫秒数。
15
- * @param {boolean} [immediate=false] 是否在延迟开始前调用。
14
+ * @param {number} [wait=0] 需要延迟的毫秒数。默认 `0`。
15
+ * @param {boolean} [immediate=false] 是否在延迟开始前调用。默认 `false`。
16
16
  * @returns {Function} 防抖动函数。
17
17
  * @example
18
18
  *
@@ -3,14 +3,14 @@ interface DefaultTo {
3
3
  <T, D>(value: T | null | undefined, defaultValue: D): T | D;
4
4
  }
5
5
  /**
6
- * 检查值以确定是否应在其位置返回默认值。如果值为 `NaN` `null` 或 `undefined` ,返回 `defaultValue` 。
6
+ * 检查值以确定是否应在其位置返回默认值。如果值为 `NaN` `null` 或 `undefined`,返回 `defaultValue`。
7
7
  *
8
8
  * @function
9
9
  * @alias module:Util.defaultTo
10
10
  * @since 1.0.0
11
11
  * @param {*} value 要检查的值。
12
12
  * @param {*} defaultValue 默认值。
13
- * @returns {*} 如果值为 `NaN` `null` 或 `undefined` ,返回 `defaultValue` ,否则返回 `value` 。
13
+ * @returns {*} 如果值为 `NaN` `null` 或 `undefined`,返回 `defaultValue`,否则返回 `value`。
14
14
  * @example
15
15
  *
16
16
  * defaultTo(undefined, 1); // 1
package/types/delay.d.ts CHANGED
@@ -1,7 +1,6 @@
1
- /// <reference types="node" />
2
1
  import { FunctionAny } from './internals/types';
3
2
  /**
4
- * 延迟 `wait` 毫秒后调用 `func` 。
3
+ * 延迟 `wait` 毫秒后调用 `func`。
5
4
  *
6
5
  * @static
7
6
  * @alias module:Function.delay
@@ -9,7 +8,7 @@ import { FunctionAny } from './internals/types';
9
8
  * @param {Function} func 要延迟的函数。
10
9
  * @param {number} wait 要延迟的毫秒数。
11
10
  * @param {...*} [args] 调用函数时传入的参数。
12
- * @returns {number} 计时器 id
11
+ * @returns {number} 定时器 `id`。
13
12
  * @example
14
13
  *
15
14
  * // 延迟 1000 毫秒后执行
@@ -2,7 +2,7 @@ import { IterateeParam } from './internals/types';
2
2
  /**
3
3
  * 创建一个 `array` 排除 `values` 值的新数组。如果传入迭代函数,会调用数组的每个元素以产生唯一性计算的标准。
4
4
  *
5
- * `iteratee` 调用时会传入一个参数 `value` 。
5
+ * `iteratee` 调用时会传入一个参数 `value`。
6
6
  *
7
7
  * 默认使用了 [`SameValueZero`](https://tc39.es/ecma262/#sec-samevaluezero) 做等值比较。如果 `strictCheck=true` 将使用 [`SameValue`](https://tc39.es/ecma262/#sec-samevalue) 做等值比较。
8
8
  *
@@ -11,8 +11,8 @@ import { IterateeParam } from './internals/types';
11
11
  * @since 1.0.0
12
12
  * @param {Array} array 要检查的数组。
13
13
  * @param {Array} values 排除的值。
14
- * @param {Function | string | number | Symbol} [iteratee=identity] 迭代函数,调用每个元素。
15
- * @param {boolean} [strictCheck=false] 严格比较,区分 `0` `-0`,默认 `false` 。
14
+ * @param {Function | string | number | Symbol} [iteratee=identity] 迭代函数,调用每个元素。默认 `identity`。
15
+ * @param {boolean} [strictCheck=false] 严格比较,区分 `0` `-0`。默认 `false`。
16
16
  * @returns {Array} 过滤值后的新数组。
17
17
  * @example
18
18
  *
package/types/eq.d.ts CHANGED
@@ -9,8 +9,8 @@
9
9
  * @see {@link https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Equality_comparisons_and_sameness JavaScript 中的相等性判断}
10
10
  * @param {*} value 要比较的值。
11
11
  * @param {*} other 另一个要比较的值。
12
- * @param {boolean} [strictCheck=false] 严格比较,区分 `0` `-0`,默认 `false` 。
13
- * @returns {boolean} 如果两个值相等,返回 `true` ,否则返回 `false` 。
12
+ * @param {boolean} [strictCheck=false] 严格比较,区分 `0` `-0`。默认 `false`。
13
+ * @returns {boolean} 如果两个值相等,返回 `true`,否则返回 `false`。
14
14
  * @example
15
15
  *
16
16
  * eq(-0, 0); // true
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 转义 `RegExp` 字符串中特殊的字符 `\\` `^` `$` `.` `*` `+` `?` `-` `(` `)` `[` `]` `{` `}` `|` 。
2
+ * 转义 `RegExp` 字符串中特殊的字符 `\\` `^` `$` `.` `*` `+` `?` `-` `(` `)` `[` `]` `{` `}` `|`。
3
3
  *
4
4
  * @static
5
5
  * @alias module:String.escapeRegExp
package/types/every.d.ts CHANGED
@@ -6,16 +6,16 @@ interface Every {
6
6
  <T extends object>(collection: WithNullable<T>, predicate?: ObjectIterator<T, any>): boolean;
7
7
  }
8
8
  /**
9
- * 迭代集合中的元素执行 `predicate` 函数,如果全部元素都通过 `predicate` 返回真值,则返回 `true` ,否则停止迭代并返回 `false` 。
9
+ * 迭代集合中的元素执行 `predicate` 函数,如果全部元素都通过 `predicate` 返回真值,则返回 `true`,否则停止迭代并返回 `false`。
10
10
  *
11
- * `predicate` 调用时会传入三个参数 `value` `index|key` `collection` 。
11
+ * `predicate` 调用时会传入三个参数 `value` `index|key` `collection`。
12
12
  *
13
13
  * @function
14
14
  * @alias module:Collection.every
15
15
  * @since 1.7.0
16
16
  * @param {ArrayLike<any> | Object} collection 要迭代的集合。
17
- * @param {function} [predicate=identity] 每次迭代调用的函数。
18
- * @returns {boolean} 如果全部元素都通过 `predicate` 测试,则返回 `true` ,否则返回 `false` 。
17
+ * @param {function} [predicate=identity] 每次迭代调用的函数。默认 `identity`。
18
+ * @returns {boolean} 如果全部元素都通过 `predicate` 测试,则返回 `true`,否则返回 `false`。
19
19
  * @example
20
20
  *
21
21
  * const arr = [1, 2, 3, 4, 5, 6];
package/types/filter.d.ts CHANGED
@@ -8,13 +8,13 @@ interface Filter {
8
8
  /**
9
9
  * 过滤集合元素,为每个元素执行 `predicate` 函数,返回真值的元素将保留在结果数组中(不改变原值)。
10
10
  *
11
- * `predicate` 调用时会传入三个参数 `value` `index|key` `collection` 。
11
+ * `predicate` 调用时会传入三个参数 `value` `index|key` `collection`。
12
12
  *
13
13
  * @static
14
14
  * @alias module:Collection.filter
15
15
  * @since 1.7.0
16
16
  * @param {ArrayLike<any> | Object} collection 要迭代的集合。
17
- * @param {function} [predicate=identity] 每次迭代调用的函数。
17
+ * @param {function} [predicate=identity] 每次迭代调用的函数。默认 `identity`。
18
18
  * @returns {Array} 返回新的过滤数组。
19
19
  * @example
20
20
  *
package/types/find.d.ts CHANGED
@@ -6,15 +6,15 @@ interface Find {
6
6
  <T extends object>(collection: WithNullable<T>, predicate?: ObjectIterator<T, any>): T[keyof T] | undefined;
7
7
  }
8
8
  /**
9
- * 迭代集合中的元素执行 `predicate` 函数,返回第一个通过 `predicate` 返回真值的元素(停止迭代),如果都不通过返回 `undefined` 。
9
+ * 迭代集合中的元素执行 `predicate` 函数,返回第一个通过 `predicate` 返回真值的元素(停止迭代),如果都不通过返回 `undefined`。
10
10
  *
11
- * `predicate` 调用时会传入三个参数 `value` `index|key` `collection` 。
11
+ * `predicate` 调用时会传入三个参数 `value` `index|key` `collection`。
12
12
  *
13
13
  * @function
14
14
  * @alias module:Collection.find
15
15
  * @since 1.7.0
16
16
  * @param {ArrayLike<any> | Object} collection 要迭代的集合。
17
- * @param {function} [predicate=identity] 每次迭代调用的函数。
17
+ * @param {function} [predicate=identity] 每次迭代调用的函数。默认 `identity`。
18
18
  * @returns {ArrayLike<any> | Object} 返回第一个通过 `predicate` 返回真值的元素,否则返回 `undefined`。
19
19
  * @example
20
20
  *
package/types/floor.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 根据精度向下舍入 `number` 。
2
+ * 根据精度向下舍入 `number`。
3
3
  *
4
4
  * 注:精度可以理解为保留几位小数。
5
5
  *
@@ -8,7 +8,7 @@
8
8
  * @since 1.0.0
9
9
  * @see {@link https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Math/round#小数舍入 小数舍入}
10
10
  * @param {number} number 要向下舍入的值。
11
- * @param {number} [precision=0] 向下舍入的精度。
11
+ * @param {number} [precision=0] 向下舍入的精度。默认 `0`。
12
12
  * @returns {number} 向下舍入的值。
13
13
  * @example
14
14
  *
@@ -1,15 +1,15 @@
1
1
  /**
2
- * 迭代集合元素,为每个元素调用 `iteratee` 。
2
+ * 迭代集合元素,为每个元素调用 `iteratee`。
3
3
  *
4
4
  * `iteratee` 函数可以通过显式返回 `false` 来提前退出迭代。
5
5
  *
6
- * `iteratee` 调用时会传入三个参数 `value` `index|key` `collection` 。
6
+ * `iteratee` 调用时会传入三个参数 `value` `index|key` `collection`。
7
7
  *
8
8
  * @function
9
9
  * @alias module:Collection.forEach
10
10
  * @since 1.7.0
11
11
  * @param {ArrayLike<any> | Object} collection 要迭代的集合。
12
- * @param {Function} [iteratee=identity] 每次迭代调用的函数。
12
+ * @param {Function} [iteratee=identity] 每次迭代调用的函数。默认 `identity`。
13
13
  * @returns {ArrayLike<any> | Object} 迭代集合本身。
14
14
  * @example
15
15
  *
@@ -1,15 +1,15 @@
1
1
  /**
2
- * 迭代集合元素(从右往左的顺序),为每个元素调用 `iteratee` 。
2
+ * 迭代集合元素(从右往左的顺序),为每个元素调用 `iteratee`。
3
3
  *
4
4
  * `iteratee` 函数可以通过显式返回 `false` 来提前退出迭代。
5
5
  *
6
- * `iteratee` 调用时会传入三个参数 `value` `index|key` `collection` 。
6
+ * `iteratee` 调用时会传入三个参数 `value` `index|key` `collection`。
7
7
  *
8
8
  * @function
9
9
  * @alias module:Collection.forEachRight
10
10
  * @since 1.7.0
11
11
  * @param {ArrayLike<any> | Object} collection 要迭代的集合。
12
- * @param {Function} [iteratee=identity] 每次迭代调用的函数。
12
+ * @param {Function} [iteratee=identity] 每次迭代调用的函数。默认 `identity`。
13
13
  * @returns {ArrayLike<any> | Object} 迭代集合本身。
14
14
  * @example
15
15
  *
@@ -8,13 +8,13 @@ interface GroupBy {
8
8
  /**
9
9
  * 创建一个组成聚合对象, `key` 是经过 `iteratee` 执行处理 `collection` 中每个元素后返回的结果。分组值的顺序是由他们出现在 `collection` 的顺序确定的。每个键对应的值负责生成 `key` 的元素组成的数组。
10
10
  *
11
- * `iteratee` 调用时会传入三个参数 `value` `index|key` `collection` 。
11
+ * `iteratee` 调用时会传入三个参数 `value` `index|key` `collection`。
12
12
  *
13
13
  * @static
14
14
  * @alias module:Collection.groupBy
15
15
  * @since 1.0.0
16
16
  * @param {ArrayLike<any> | Object} collection 一个用来迭代的集合。
17
- * @param {Function | string | number | Symbol} [iteratee=identity] 迭代函数,用来转换键。
17
+ * @param {Function | string | number | Symbol} [iteratee=identity] 迭代函数,用来转换键。默认 `identity`。
18
18
  * @returns {Object} 组成聚合对象。
19
19
  * @example
20
20
  *
package/types/gt.d.ts CHANGED
@@ -1,12 +1,12 @@
1
1
  /**
2
- * 检查 `value` 是否大于 `other` 。
2
+ * 检查 `value` 是否大于 `other`。
3
3
  *
4
4
  * @function
5
5
  * @alias module:Util.gt
6
6
  * @since 1.0.0
7
7
  * @param {*} value 要比较的值。
8
8
  * @param {*} other 另一个要比较的值。
9
- * @returns {boolean} 如果 `value` 大于 `other` 返回 `true` ,否则返回 `false` 。
9
+ * @returns {boolean} 如果 `value` 大于 `other` 返回 `true`,否则返回 `false`。
10
10
  * @example
11
11
  *
12
12
  * gt(1, 3); // false
package/types/gte.d.ts CHANGED
@@ -1,12 +1,12 @@
1
1
  /**
2
- * 检查 `value` 是否大于或等于 `other` 。
2
+ * 检查 `value` 是否大于或等于 `other`。
3
3
  *
4
4
  * @function
5
5
  * @alias module:Util.gte
6
6
  * @since 1.0.0
7
7
  * @param {*} value 要比较的值。
8
8
  * @param {*} other 另一个要比较的值。
9
- * @returns {boolean} 如果 `value` 大于或等于 `other` 返回 `true` ,否则返回 `false` 。
9
+ * @returns {boolean} 如果 `value` 大于或等于 `other` 返回 `true`,否则返回 `false`。
10
10
  * @example
11
11
  *
12
12
  * gte(1, 3); // false
@@ -5,7 +5,7 @@
5
5
  * @alias module:Util.identity
6
6
  * @since 1.0.0
7
7
  * @param {*} value 任意值。
8
- * @returns 返回 `value` 。
8
+ * @returns 返回 `value`。
9
9
  * @example
10
10
  *
11
11
  * const obj = { a: 1, b: 2 };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 检查数字是否在 `start` 与 `end` 之间,但不包括 `end` 。
2
+ * 检查数字是否在 `start` 与 `end` 之间,但不包括 `end`。
3
3
  *
4
4
  * 如果 `start` 大于 `end` 会自动交换范围参数。
5
5
  *
@@ -8,8 +8,8 @@
8
8
  * @since 1.0.0
9
9
  * @param {number} number 要检查的值。
10
10
  * @param {number} start 开始范围。
11
- * @param {number} [end=0] 结束范围。
12
- * @returns {number} 如果数字在范围内,返回 `true` ,否则返回 `false` 。
11
+ * @param {number} [end=0] 结束范围。默认 `0`。
12
+ * @returns {number} 如果数字在范围内,返回 `true`,否则返回 `false`。
13
13
  * @example
14
14
  *
15
15
  * inRange(3, 2, 4); // true
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 获取值的 `Object.prototype.toString` 。
2
+ * 获取值的 `Object.prototype.toString`。
3
3
  *
4
4
  * @private
5
5
  * @param value 要查询的值