tools-min-ns 1.14.2 → 1.15.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/README.md CHANGED
@@ -5,6 +5,11 @@ cnpm i tools-min-ns --save
5
5
  ```
6
6
 
7
7
  # updates
8
+
9
+ ## v1.14.4
10
+ > ArrayUtil repeatArray 创建一个数组,其中包含原数组的元素,重复一定次数
11
+ ## v1.14.3
12
+ > StringUtil getUuiD 重构随机ID效率更高
8
13
  ## v1.14.2
9
14
  > DateUtil 日期格式化兼容优化
10
15
  ## v1.14.1
@@ -173,5 +173,16 @@ const chunkedArray = chunkArray(data, 3);
173
173
  console.log(chunkedArray);// [Array(3), Array(3), Array(3)]
174
174
  */
175
175
  function chunkArray<T>(array: T[], size: number): T[][];
176
+ /**
177
+ * 创建一个数组,其中包含原数组的元素,重复一定次数
178
+ * @param originalList [1, 2, 3]
179
+ * @param length 20
180
+ * @returns [1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2]
181
+ * @example
182
+ * const list = [1, 2, 3];
183
+ * const length = 20;
184
+ * console.log(repeatArray(list, length)); // 输出: [1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2]
185
+ */
186
+ function repeatArray<T>(originalList: T[], length: number): T[];
176
187
  }
177
188
  export default ArrayUtil;
@@ -371,5 +371,32 @@ var ArrayUtil;
371
371
  return result;
372
372
  }
373
373
  ArrayUtil.chunkArray = chunkArray;
374
+ /**
375
+ * 创建一个数组,其中包含原数组的元素,重复一定次数
376
+ * @param originalList [1, 2, 3]
377
+ * @param length 20
378
+ * @returns [1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2]
379
+ * @example
380
+ * const list = [1, 2, 3];
381
+ * const length = 20;
382
+ * console.log(repeatArray(list, length)); // 输出: [1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2]
383
+ */
384
+ function repeatArray(originalList, length) {
385
+ var repeatedList = [];
386
+ // 计算重复多少次
387
+ var repeatCount = Math.floor(length / originalList.length);
388
+ // 计算剩余的元素数量
389
+ var remainingElements = length % originalList.length;
390
+ // 将原列表重复指定次数
391
+ for (var i = 0; i < repeatCount; i++) {
392
+ repeatedList.push.apply(repeatedList, __spreadArray([], __read(originalList), false)); // 使用扩展运算符将数组合并
393
+ }
394
+ // 如果有剩余的元素,追加到结果中
395
+ if (remainingElements > 0) {
396
+ repeatedList.push.apply(repeatedList, __spreadArray([], __read(originalList.slice(0, remainingElements)), false));
397
+ }
398
+ return repeatedList;
399
+ }
400
+ ArrayUtil.repeatArray = repeatArray;
374
401
  })(ArrayUtil || (ArrayUtil = {}));
375
402
  export default ArrayUtil;
@@ -540,7 +540,12 @@ var StringUtil;
540
540
  if (randomLength === void 0) {
541
541
  randomLength = 9;
542
542
  }
543
- return Number(Math.random().toString().slice(2, randomLength + 2) + Date.now()).toString(36).slice(2, randomLength + 2);
543
+ var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
544
+ var result = '';
545
+ for (var i = 0; i < randomLength; i++) {
546
+ result += chars[Math.floor(Math.random() * 62)]; // 生成一个随机字符,然后添加到结果字符串中
547
+ }
548
+ return result;
544
549
  }
545
550
  StringUtil.getUuiD = getUuiD;
546
551
  /** 默认颜色数组 */
@@ -173,5 +173,16 @@ const chunkedArray = chunkArray(data, 3);
173
173
  console.log(chunkedArray);// [Array(3), Array(3), Array(3)]
174
174
  */
175
175
  function chunkArray<T>(array: T[], size: number): T[][];
176
+ /**
177
+ * 创建一个数组,其中包含原数组的元素,重复一定次数
178
+ * @param originalList [1, 2, 3]
179
+ * @param length 20
180
+ * @returns [1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2]
181
+ * @example
182
+ * const list = [1, 2, 3];
183
+ * const length = 20;
184
+ * console.log(repeatArray(list, length)); // 输出: [1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2]
185
+ */
186
+ function repeatArray<T>(originalList: T[], length: number): T[];
176
187
  }
177
188
  export default ArrayUtil;
@@ -381,5 +381,32 @@ var ArrayUtil;
381
381
  return result;
382
382
  }
383
383
  ArrayUtil.chunkArray = chunkArray;
384
+ /**
385
+ * 创建一个数组,其中包含原数组的元素,重复一定次数
386
+ * @param originalList [1, 2, 3]
387
+ * @param length 20
388
+ * @returns [1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2]
389
+ * @example
390
+ * const list = [1, 2, 3];
391
+ * const length = 20;
392
+ * console.log(repeatArray(list, length)); // 输出: [1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2]
393
+ */
394
+ function repeatArray(originalList, length) {
395
+ var repeatedList = [];
396
+ // 计算重复多少次
397
+ var repeatCount = Math.floor(length / originalList.length);
398
+ // 计算剩余的元素数量
399
+ var remainingElements = length % originalList.length;
400
+ // 将原列表重复指定次数
401
+ for (var i = 0; i < repeatCount; i++) {
402
+ repeatedList.push.apply(repeatedList, __spreadArray([], __read(originalList), false)); // 使用扩展运算符将数组合并
403
+ }
404
+ // 如果有剩余的元素,追加到结果中
405
+ if (remainingElements > 0) {
406
+ repeatedList.push.apply(repeatedList, __spreadArray([], __read(originalList.slice(0, remainingElements)), false));
407
+ }
408
+ return repeatedList;
409
+ }
410
+ ArrayUtil.repeatArray = repeatArray;
384
411
  })(ArrayUtil || (ArrayUtil = {}));
385
412
  exports.default = ArrayUtil;
@@ -550,7 +550,12 @@ var StringUtil;
550
550
  if (randomLength === void 0) {
551
551
  randomLength = 9;
552
552
  }
553
- return Number(Math.random().toString().slice(2, randomLength + 2) + Date.now()).toString(36).slice(2, randomLength + 2);
553
+ var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
554
+ var result = '';
555
+ for (var i = 0; i < randomLength; i++) {
556
+ result += chars[Math.floor(Math.random() * 62)]; // 生成一个随机字符,然后添加到结果字符串中
557
+ }
558
+ return result;
554
559
  }
555
560
  StringUtil.getUuiD = getUuiD;
556
561
  /** 默认颜色数组 */
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "tools-min-ns",
3
3
  "description": "工具包适用于前端以及node",
4
- "version": "1.14.2",
4
+ "version": "1.15.0",
5
5
  "main": "lib/index.js",
6
6
  "license": "MIT",
7
7
  "author": "nanshen",