javascript - 删除集合中的第一个匹配项

标签 javascript lodash

给定一个集合,如何删除符合条件的第一个项目?

例如,给定这个集合:

[
  { id: 1, name: "don" },
  { id: 2, name: "don" },
  { id: 3, name: "james" },
  { id: 4, name: "james" }
]

过滤掉第一个匹配{ name: "james"}的结果。

结果:

[
  { id: 1, name: "don" },
  { id: 2, name: "don" },
  { id: 4, name: "james" }
]

最佳答案

使用 underscore.js _.without_.findWhere

var myarray = [
  { id: 1, name: "don" },
  { id: 2, name: "don" },
  { id: 3, name: "james" },
  { id: 4, name: "james" }
];
var arr = _.without(myarray, _.findWhere(myarray, {
 name: "james"
}));
console.log(arr);
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>

使用 Lodash _.without_.find

var myarray = [
  { id: 1, name: "don" },
  { id: 2, name: "don" },
  { id: 3, name: "james" },
  { id: 4, name: "james" }
];


var result =_.without(myarray, _.find(myarray, { name: "james" }));
console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.15/lodash.min.js"></script>

关于javascript - 删除集合中的第一个匹配项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46270476/

相关文章:

javascript - 知道折线路径变量何时更改

javascript - 导航子菜单在页面加载时未最小化

javascript - 当另一个 Action 被触发时,处于 redux 状态的对象消失

javascript - 无法在 React Native FlatList 的 View 中嵌套文本

javascript - 从对象中删除每个条目的键不同的项目

javascript - 使用lodash javascript全连接二维数组

javascript - 使用外部配置加载 lodash 时出现 Webpack 错误

java - Webview里面弹出窗口android

typescript - Lodash,查找所有匹配元素的索引

javascript - 在嵌套对象数组中查找和更新值