zoukankan      html  css  js  c++  java
  • js 根据条件删除数组中某个对象&js filter过滤数组对象的使用

    删除 ----  item不设置

    arr.splice(1,1)   //['a','c','d']         删除起始下标为1,长度为1的一个值,len设置的1,如果为0,则数组不变

    arr.splice(1,2)  //['a','d']          删除起始下标为1,长度为2的一个值,len设置的2

    替换 ---- item为替换的值

    arr.splice(1,1,'ttt')        //['a','ttt','c','d']         替换起始下标为1,长度为1的一个值为‘ttt’,len设置的1

    arr.splice(1,2,'ttt')        //['a','ttt','d']         替换起始下标为1,长度为2的两个值为‘ttt’,len设置的1

    添加 ----  len设置为0,item为添加的值

    arr.splice(1,0,'ttt')        //['a','ttt','b','c','d']         表示在下标为1处添加一项‘ttt’

    看来还是splice最方便啦

    2:delete       delete删除掉数组中的元素后,会把该下标出的值置为undefined,数组的长度不会变

    如:delete arr[1]  //['a', ,'c','d']     中间出现两个逗号,数组长度不变,有一项为undefined

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

    array 是定义的数组

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

    使用js filter

    var arr = [1,2,'',3,' '];
        var arr2=arr.filter(function (item) {
            return item;
        });

    var array = [{id:1,name:"b"},{id:2,name:"b"}];
    var arr2=arr.filter(function (item) {
           return item.id!=1; });
     
  • 相关阅读:
    msp430项目编程
    msp430入门编程50
    msp430入门编程47
    msp430入门编程46
    msp430入门编程45
    msp430入门编程43
    iOS7上leftBarButtonItem无法实现滑动返回的完美解决方案
    Linux下MySQL 5.5的修改字符集编码为UTF8(彻底解决中文乱码问题)
    Android keystore 密码找回
    Android应用程序签名详解
  • 原文地址:https://www.cnblogs.com/netlock/p/13232754.html
Copyright © 2011-2022 走看看