angular - 我有一个具有相同值的数组需要删除所有其他值
问题描述
例如:
var arr = {
"servicegroup": [{
"name": "yy",
"description": "yy",
"isvalid": 1
}, {
"name": "yy",
"description": "yy",
"isvalid": 1]
}
}
解决方案
算法方式:-
const arr = { "servicegroup": [ { "name": "yy", "description": "yy", "isvalid": 1 }, { "name": "yy", "description": "yy", "isvalid": 2 } ] };
const source = arr[ 'servicegroup' ];
const obj = {};
const res = [];
let i = 0;
let count = 0;
for (let i = 0; i < source.length; i++) {
const el = source[ i ];
if (count === 0) {
obj[ el.name ] = true;
*emphasized text*count++;
}
if (obj[ el.name ]) {
res.push(el);
delete obj[ el.name ];
}
}
console.log(res);
推荐阅读
- c++ - 如何在 CMake 项目中正确包含 SDL2 源代码
- r - R中两个DF的匹配/对齐列
- google-apps-script - 获取服务帐户凭据 Apps 脚本 - TypeError:无法从 null 读取属性
- ios - NativeScript 动态数组 - 元素从屏幕底部掉落?
- database - 随着记录的增长,mongoldb 文档更新的性能下降
- python - 使用python从间接图到有向图
- sql - 随机选择 X 个具有不同名称的对象
- pandas - Pandas groupby并在第n行中逐个元素减去一列的每个元素
- java - 如何防止 JFrame 始终位于所有其他应用程序之上?
- c# - 新的重复类,但在 C# 中少了一个属性?