tools-for-js 1.2.1 → 1.2.3
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 +2 -1
- package/lib/utils/array.js +11 -9
- package/lib/utils/object.js +18 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -49,4 +49,5 @@ import { API } from 'tools-for-js'
|
|
|
49
49
|
| 按指定长度分段字符串 | splitString |
|
|
50
50
|
| 将对象转换为查询字符串 | objectToQs |
|
|
51
51
|
| 计算数据分页 | getPagination |
|
|
52
|
-
| 根据
|
|
52
|
+
| 根据 key 值排序,相同时则根据时间 timeKey 值排序 | sortByKeyAndTime |
|
|
53
|
+
| 根据 key 获取对象值 | getValByKey |
|
package/lib/utils/array.js
CHANGED
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.treeLastChildSum = exports.sortByKeyAndTime = exports.randomNumEnum = exports.getValueFromArray = exports.getPagination = exports.deWeightArray = exports.checkKeyEmpty = exports.arrayToTree = exports.arrExchange = exports.arrEleMove = void 0;
|
|
7
7
|
var _calculate = require("./calculate");
|
|
8
8
|
var _common = require("./common");
|
|
9
|
+
var _object = require("./object");
|
|
9
10
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
10
11
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
11
12
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
@@ -176,7 +177,7 @@ var arrayToTree = exports.arrayToTree = function arrayToTree(array, config) {
|
|
|
176
177
|
var getValueFromArray = exports.getValueFromArray = function getValueFromArray(list, labelVal) {
|
|
177
178
|
var label = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'label';
|
|
178
179
|
var value = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'value';
|
|
179
|
-
list =
|
|
180
|
+
list = (0, _common.deepCopy)(list);
|
|
180
181
|
var res = list.find(function (item) {
|
|
181
182
|
return item[label] == labelVal;
|
|
182
183
|
}) || {};
|
|
@@ -216,7 +217,8 @@ var randomNumEnum = exports.randomNumEnum = function randomNumEnum(array, num) {
|
|
|
216
217
|
var getPagination = exports.getPagination = function getPagination(list, params) {
|
|
217
218
|
var page = params.page,
|
|
218
219
|
pageSize = params.pageSize;
|
|
219
|
-
|
|
220
|
+
list = (0, _common.deepCopy)(list);
|
|
221
|
+
return list.slice((page - 1) * pageSize, page * pageSize);
|
|
220
222
|
};
|
|
221
223
|
|
|
222
224
|
/*******
|
|
@@ -239,15 +241,15 @@ var sortByKeyAndTime = exports.sortByKeyAndTime = function sortByKeyAndTime(list
|
|
|
239
241
|
order = _ref3$order === void 0 ? 'asc' : _ref3$order,
|
|
240
242
|
_ref3$timeOrder = _ref3.timeOrder,
|
|
241
243
|
timeOrder = _ref3$timeOrder === void 0 ? 'desc' : _ref3$timeOrder;
|
|
242
|
-
|
|
243
|
-
return
|
|
244
|
-
var a_val = a
|
|
245
|
-
var a_time = new Date(a
|
|
246
|
-
var b_val = b
|
|
247
|
-
var b_time = new Date(b
|
|
244
|
+
list = (0, _common.deepCopy)(list);
|
|
245
|
+
return list.sort(function (a, b) {
|
|
246
|
+
var a_val = (0, _object.getValByKey)(a, key);
|
|
247
|
+
var a_time = +new Date((0, _object.getValByKey)(a, timeKey));
|
|
248
|
+
var b_val = (0, _object.getValByKey)(b, key);
|
|
249
|
+
var b_time = +new Date((0, _object.getValByKey)(b, timeKey));
|
|
248
250
|
if (a_val === b_val) {
|
|
249
251
|
return timeOrder === 'desc' ? b_time - a_time : a_time - b_time;
|
|
250
252
|
}
|
|
251
|
-
return order === 'asc' ?
|
|
253
|
+
return order === 'asc' ? a_val - b_val : b_val - a_val;
|
|
252
254
|
});
|
|
253
255
|
};
|
package/lib/utils/object.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.objectToQs = void 0;
|
|
6
|
+
exports.objectToQs = exports.getValByKey = void 0;
|
|
7
7
|
/*******
|
|
8
8
|
* @description: 将对象转换为查询字符串
|
|
9
9
|
* @author: 琴时
|
|
@@ -15,4 +15,21 @@ var objectToQs = exports.objectToQs = function objectToQs(obj) {
|
|
|
15
15
|
return Object.keys(obj).map(function (key) {
|
|
16
16
|
return "".concat(encodeURIComponent(key), "=").concat(encodeURIComponent(obj[key]));
|
|
17
17
|
}).join('&');
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
/*******
|
|
21
|
+
* @description: 根据key获取对象值
|
|
22
|
+
* @author: 琴时
|
|
23
|
+
* @param {Object} obj
|
|
24
|
+
* @param {String} key
|
|
25
|
+
* @return {*}
|
|
26
|
+
* @example: getValByKey({a: {b: {c: 1}}}, 'a.b.c') => 1
|
|
27
|
+
*/
|
|
28
|
+
var getValByKey = exports.getValByKey = function getValByKey(obj, key) {
|
|
29
|
+
var keys = key.split('.');
|
|
30
|
+
var value = obj;
|
|
31
|
+
for (var i = 0; i < keys.length; i++) {
|
|
32
|
+
value = value[keys[i]];
|
|
33
|
+
}
|
|
34
|
+
return value;
|
|
18
35
|
};
|