根据对象属性有针对性地删除数组元素
问题:
你拥有一个对象数组,并寻求一种方法来根据该数组中的特定属性消除特定元素
示例:
给定一个如下所示的数组:
var myArray = [ {field: 'id', operator: 'eq', value: id}, {field: 'cStatus', operator: 'eq', value: cStatus}, {field: 'money', operator: 'eq', value: money} ];
如何删除带有 'money' 的对象它的“领域”属性?
解决方案:
要实现此目标删除,可以使用以下代码片段:
myArray = myArray.filter(function( obj ) { return obj.field !== 'money'; });
此代码利用过滤器方法创建一个新数组,排除指定条件为 true 的元素。在本例中,条件是 obj.field !== 'money',它检查 field 属性是否不等于 'money'。
注意:
需要注意的是,filter 方法返回一个新数组。如果您有引用原始数组的其他变量,即使您使用新引用更新原始变量 (myArray),它们也不会收到过滤后的数据。请谨慎使用,避免数据不一致。
以上是如何根据特定对象属性从数组中删除对象?的详细内容。更多信息请关注PHP中文网其他相关文章!