js对象数组根据对象属性删除对象

 更新时间:2023年07月03日 23:48:48   作者:longzhoufeng  
这篇文章主要介绍了js对象数组根据对象属性删除对象,需要的朋友可以参考下

根据id查找到对象数组里面的对象,然后移除该对象

array 是定义的数组

var ary = [{id:1,name:"b"},{id:2,name:"b"}];
for (var i = 0;i < ary.length; i++){
   if (ary[i].id==2){
       ary.splice(i,1);
   }
}
console.log(ary);

js根据数组对象属性删除里面的指定对象

1、原数组

let list = [
  {type:"aaaaaa", name:'张三'},
  {type:"bbbbbb", name:'李四'},
  {type:"cccccc", name:'王五'}
];

2、错误方法(网上大部分都是这种错误的代码)

function removeByValue(arr, attr, value) {
    let index = 0;
    for (let i in arr) {
        if (arr[i][attr] === value) {
            index = i;
            break;
        }
    }
    arr.splice(index, 1);
}
removeByValue(list,"type","aaaaaa");
console.log(list);

上面网上大部分的代码,但是这个是有问题的,有很大的问题,我们的需求是,在已有的数组中,根据指定对象的属性值,删除这个指定对象,问题来了,每一次操作,都删除了一个下标的对象,不管它是否存在,都会把一个下标的对象删除。

3、正确的写法:

function removeByValue(arr, attr, value) {
    let index = 0;
    let flag = false;
    for (let i in arr) {
        if (arr[i][attr] === value) {
            index = i;
            flag = true
            break;
        } else {
            flag = false
        }
    }
    if (flag) {
        arr.splice(index, 1);
    }
}

到此这篇关于js对象数组根据对象属性删除对象的文章就介绍到这了,更多相关对象属性删除对象内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 利用javascript实现web页面中指定区域打印

    利用javascript实现web页面中指定区域打印

    将需要打印的课程表的table放入div标签中,然后指定出需要打印的区域,最后调用window.print打印指定内容
    2013-10-10
  • layer ui 导入文件之前传入数据的实例

    layer ui 导入文件之前传入数据的实例

    今天小编就为大家分享一篇layer ui 导入文件之前传入数据的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09
  • JavaScript设计模式之命令模式

    JavaScript设计模式之命令模式

    这篇文章主要介绍了JavaScript设计模式之命令模式,对设计模式感兴趣的同学,可以参考下
    2021-04-04
  • JS动态获取元素宽高的几种方式

    JS动态获取元素宽高的几种方式

    这篇文章主要介绍了js 动态获取元素宽高的几种方式,文章通过代码示例和图文结合的方式给大家介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-09-09
  • JavaScript 内置对象 BigInt详细解析

    JavaScript 内置对象 BigInt详细解析

    这篇文章主要介绍了JavaScript 内置对象 BigInt详细解析,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-07-07
  • JS实现字符串去重及数组去重的方法示例

    JS实现字符串去重及数组去重的方法示例

    这篇文章主要介绍了JS实现字符串去重及数组去重的方法,涉及javascript针对字符串与数组的遍历、判断、删除、添加等相关操作技巧,需要的朋友可以参考下
    2018-04-04
  • TypeScript高级用法的知识点汇总

    TypeScript高级用法的知识点汇总

    这篇文章主要给大家介绍了关于TypeScript高级用法的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用TypeScript具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-12-12
  • TypeScript类型推论与类型断言实例详解

    TypeScript类型推论与类型断言实例详解

    如果没有明确的指定类型,那么TypeScript会依照类型推论(Type Inference)的规则推断出一个类型,下面这篇文章主要给大家介绍了关于TypeScript类型推论与类型断言的相关资料,需要的朋友可以参考下
    2022-11-11
  • Javascript 获取滚动条位置等信息的函数

    Javascript 获取滚动条位置等信息的函数

    有时为了准确定位一个元素,我们需要获取滚动条的位置,这种需求经常出现在 tooltip 和 拖放等应用中,其实这个技术很简单,关键是要考虑浏览器的兼容性,本文就是介绍这一问题的解决方法。
    2009-09-09
  • 6个DIV 135或246间隔一秒轮番显示效果

    6个DIV 135或246间隔一秒轮番显示效果

    6个DIV 间隔一秒 轮番进行奇偶显示. 比如先135 一秒后 246 然后再135 循环
    2010-07-07

最新评论