utiller 1.0.315 → 1.0.317

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.
@@ -3511,6 +3511,56 @@ var Utiller = /*#__PURE__*/function () {
3511
3511
  });
3512
3512
  });
3513
3513
  }
3514
+
3515
+ /**
3516
+ * const array = [{ a: 1, b: 2, c: 3 }, { a: 1, b: 2, d: 4 }];
3517
+ * mutateRemoveKeys(array, ['b', 'c']);
3518
+ * console.log(array); // ➜ [ { a: 1 }, { a: 1, d: 4 } ]
3519
+ *
3520
+ * 移除指定 keys,並原地改動原始陣列
3521
+ * @param {Array<Object>} array - 要修改的原始 array
3522
+ * @param {Array<string>} keysToRemove - 要刪除的 key 清單
3523
+ */
3524
+ }, {
3525
+ key: "mutateRemoveKeys",
3526
+ value: function mutateRemoveKeys(array, keysToRemove) {
3527
+ _lodash["default"].forEach(array, function (obj, index) {
3528
+ var filtered = Object.fromEntries(Object.entries(obj).filter(function (_ref7) {
3529
+ var _ref8 = (0, _slicedToArray2["default"])(_ref7, 1),
3530
+ key = _ref8[0];
3531
+ return !keysToRemove.includes(key);
3532
+ }));
3533
+ // 原地替換每個 object 的 key
3534
+ Object.keys(obj).forEach(function (k) {
3535
+ return delete obj[k];
3536
+ });
3537
+ Object.assign(obj, filtered);
3538
+ });
3539
+ }
3540
+
3541
+ /**
3542
+ * const array = [{ a: 1, b: 2, c: 3 }, { a: 1, b: 2, d: 4 }];
3543
+ * const newArray = removeKeysFromArrayObjects(array, ['b', 'c']);
3544
+ *
3545
+ * console.log(newArray); // ➜ [ { a: 1 }, { a: 1, d: 4 } ]
3546
+ * console.log(array); // ➜ 原始 array 不變
3547
+ *
3548
+ * 回傳一個新的 array,移除每個物件中的指定 keys
3549
+ * @param {Array<Object>} array - 原始資料陣列
3550
+ * @param {Array<string>} keysToRemove - 要移除的 key 名稱陣列
3551
+ * @returns {Array<Object>} - 新的 array(不改變原本的 array)
3552
+ */
3553
+ }, {
3554
+ key: "removeKeysFromArrayObjects",
3555
+ value: function removeKeysFromArrayObjects(array, keysToRemove) {
3556
+ return _lodash["default"].map(array, function (obj) {
3557
+ return Object.fromEntries(Object.entries(obj).filter(function (_ref9) {
3558
+ var _ref10 = (0, _slicedToArray2["default"])(_ref9, 1),
3559
+ key = _ref10[0];
3560
+ return !keysToRemove.includes(key);
3561
+ }));
3562
+ });
3563
+ }
3514
3564
  }]);
3515
3565
  }();
3516
3566
  var _default = exports["default"] = Utiller;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "utiller",
3
- "version": "1.0.315",
3
+ "version": "1.0.317",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -11,7 +11,7 @@
11
11
  "license": "ISC",
12
12
  "dependencies": {
13
13
  "configerer": "^1.0.11",
14
- "utiller": "^1.0.314",
14
+ "utiller": "^1.0.316",
15
15
  "linepayer": "^1.0.4",
16
16
  "databazer": "^1.0.12",
17
17
  "lodash": "^4.17.20",