@angular-jz/jz
Version:
jim jz
62 lines • 2.11 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var ArrayUtility = /** @class */ (function () {
function ArrayUtility() {
}
///树状结构转数组结构
ArrayUtility.treeToArray = function (tree) {
var list = [];
var oldArray = tree.slice();
var fn = function (newArray, oldArray) {
oldArray.forEach(function (item) {
item.childCount = (item.children && item.children.length > 0) ? item.children.length : 0;
newArray.push(item);
if (item.childCount > 0)
fn(newArray, item.children);
});
};
fn(list, oldArray);
return list;
};
///在数组中根据某个属性查找元素
ArrayUtility.findInArray = function (items, fieldName, fieldValue) {
if (!items)
return null;
for (var i = 0; i < items.length; i++) {
if (items[i][fieldName] == fieldValue)
return items[i];
}
return null;
};
ArrayUtility.remove = function (items, fieldName, fieldValue) {
if (!items)
return;
var count = items.length;
var idx = 0;
while (idx < count) {
var item = items[idx];
if (item[fieldName] == fieldValue) {
items.splice(idx, 1);
count--;
}
else {
idx++;
}
}
};
ArrayUtility.join = function (source, fieldName, splitString, emptyText) {
var sSplitString = splitString || ",";
var sEmptyText = emptyText || "";
if (!source || source.length == 0)
return sEmptyText;
var str = '';
for (var i = 0; i < source.length; i++) {
str += source[i][fieldName] + sSplitString;
}
str = str.substring(0, str.length - 1);
return str;
};
return ArrayUtility;
}());
exports.ArrayUtility = ArrayUtility;
//# sourceMappingURL=array-utility.js.map