es6删除数组_es6删除数组指定元素 - CSDN
精华内容
参与话题
  • es6 删除数组指定元素

    2019-11-22 15:34:12
    arr.splice(arr.findIndex(item => item.id === id), 1) //item 只是参数可以写成 i 或者 v 都可以 , ...//=== 后面的id是你想要删除的元素的id号,同理,如果你数组里面写的是num,那这里...
    arr.splice(arr.findIndex(item => item.id === id), 1)
    //item 只是参数可以写成 i 或者 v 都可以 , 
    //后面的额id是数组的id,是不能随便写的,如果你数组里面写的是id,这里就写id,如果数组里面写的是num,那这里就写num , 
    //=== 后面的id是你想要删除的元素的id号,同理,如果你数组里面写的是num,那这里就是num号 , 
    //1是你要删除1个元素的意思
    

    splice(index,num); 

      index代表的是数组元素的下标位置,num代表的是删除的个数  

      findIndex();   是找到某元素的下标的位置


    如图,这个数组里面有三个元素,现在要删掉这个id是24的元素,那我们代码就应该这么写

    arr.splice(arr.findIndex(item => item.id === 24), 1)
    打印一下发现,id为24的元素就删掉啦 !

    转载地址:https://blog.csdn.net/Hero_rong/article/details/85003476

    展开全文
  • es6 filter() 数组过滤方法总结 Array.every(x=>x)是每一个都要满足 Array.some(x=>x)是有一个满足。 Array.find(findIndex),返回符合条件的第一个值。 Array.filter(过滤成新的数组数组的方法分为两类 ...

    es6 filter() 数组过滤方法总结

    Array.every(x=>x)是每一个都要满足

    Array.some(x=>x)是有一个满足。

    Array.find(findIndex),返回符合条件的第一个值。

    Array.filter(过滤成新的数组)

    **数组的方法find和filter
    var aa=[{id:1,name:‘张三’},{id:2,name:‘李四’},{id:3,name:‘王五’},{id:2,name:‘赵六’}]

    aa.find( t=> t.id==‘2’) 结果:{id:2,name:‘李四’}

    find只会返回第一个满足条件的 而且返回的是对象

    aa.filter( t=> t.id==‘2’) 结果 [{id:2,name:‘李四’},{id:2,name:‘赵六’}]

    filter会满足所有符合条件的 返回的还是数组**

    数组的方法分为两类

    1)改变原数组

    push,pop,shift,unshift,sort,reverse,splice

    2)不改变原数组concat,join–>

    split,toStringpush:从数组最后一位开始加数据

    pop:把数组最后一位剪切

    shift:在数组最前一位剪切

    unshift:在数组最前一位加数

    reverse:把原数组逆转

    splice:arr.splice(从第几位开始,截取多少长度,在切口处添加新数据)

    concat :连接join:返回字符串

    slice:截取arr.slice(从该为开始截取,截取到该为)

    1.创建一个数组,判断数组中是否存在某个值
    item是数组里面的每一项

    var newarr = [
     { num: 1, val: 'ceshi', flag: 'aa' },
     { num: 2, val: 'ceshi2', flag: 'aa2' }
    ]
    console.log(newarr.filter(item => item.num===2 ))
    

    2.也可以通过上面方法过滤掉num为2的留下num为1的

    var newarr = [
     { num: 1, val: 'ceshi', flag: 'aa' },
     { num: 2, val: 'ceshi2', flag: 'aa2' }
    ]
    console.log(newarr.filter(item => item.num!=2 ))
    

    3.去掉空数组空字符串、undefined、null

    var arr = ['1','2',undefined, '3.jpg',undefined]
    var newArr = arr.filter(item => item)
    console.log(newArr)
     
    var arr = ['1','2',null, '3.jpg',null]
    var newArr = arr.filter(item => item)
    console.log(newArr)
     
    >//空字符串里面不能包含空格
    var arr = ['1','2','', '3.jpg','']
    var newArr = arr.filter(item => item)
    console.log(newArr)
    

    4.去掉数组中不符合项

    var arr = [20,30,50, 96,50]
    var newArr = arr.filter(item => item>40) 
    console.log(newArr)
    

    5.过滤不符合项

    var arr = ['10','12','23','44','42']
    var newArr = arr.filter(item => item.indexOf('2')<0) 
    console.log(newArr)
    

    6.数组去重

    var arr = [1, 2, 2, 3, 4, 5, 5, 6, 7, 7,8,8,0,8,6,3,4,56,2];
    var arr2 = arr.filter((x, index,self)=>self.indexOf(x)===index) 
    console.log(arr2); //[1, 2, 3, 4, 5, 6, 7, 8, 0, 56]
    

    7

    /*
      有一个对象数组 a ,将a数中对象某个属性的值存储到B数组中
    */
    var porducts = [
      {name:"cucumber",type:"vegetable"},
      {name:"banana",type:"fruit"},
      {name:"celery",type:"vegetable"},
      {name:"orange",type:"fruit"},
    ];
    // es5
    var filteredProducts = [];
    for(var i = 0;i < porducts.length; i ++){
      if(porducts[i].type === "fruit"){
        // 如果条件满足就把当前的值推入
        filteredProducts.push(porducts[i])
      }
    }
    // console.log(filteredProducts)//0: {name: "banana", type: "fruit"}1: {name: "orange", type: "fruit"}length: 2__proto__: Array(0)
    // ES6
     var filter2 = porducts.filter(function(porduct){//对porducts数组对象过滤如果porduct.type === "fruit"就return出去,再用一个变量接住
      return porduct.type === "fruit"
    })
    console.log(filter2)
    
    

    8

    /*
      需求二
      有一个对象数组A,过滤掉不满足以下条件对象
      条件:蔬菜 数量大于0 价格小于10
    */
    var products = [
      {name:"cucumber",type:"vegetable",quantity:0,price:1},
      {name:"banana",type:"fruit",quantity:10,price:16},
      {name:"celery",type:"vegetable",quantity:30,price:8},
      {name:"orange",type:"fruit",quantity:3,price:6},
    ];
    products = products.filter(function(product){
      return product.type === "vegetable"
      && product.quantity > 0
      && product.price < 10
    })
    console.log(products)//0: {name: "celery", type: "vegetable", quantity: 30, price: 8}name: "celery"price: 8quantity: 30type: "vegetable"__proto__: Objectlength: 1__proto__: Array(0)
    
    

    9

    /*
      需求三:
      有两个数组A,B,根据A中的ID值 ,过滤掉B数组不符合的数据
    */
    var post = {id:4,title:"javascript"};
    var comments = [
      {postId:4,content:'Angular4'},
      {postId:2,content:'VUE.js'},
      {postId:3,content:'Node.js'},
      {postId:4,content:'React.js'},
    ];
    function commentsForPost(post,comments){
      return comments.filter(function(comment){
        return comment.postId === post.id;
      })
    }
    console.log(commentsForPost(post,comments))
    // 0: {postId: 4, content: "Angular4"}1: {postId: 4, content: "React.js"}length: 2__proto__: Array(0)
    
    

    10、Object.keys()传入对象,返回属性名

    var arr = ['a', 'b', 'c'];
    console.log(Object.keys(arr)); // console: ['0', '1', '2']
    
    // array like object
    var obj = { 0: 'a', 1: 'b', 2: 'c' };
    console.log(Object.keys(obj)); // console: ['0', '1', '2']
    
    // array like object with random key ordering
    var anObj = { 100: 'a', 2: 'b', 7: 'c' };
    console.log(Object.keys(anObj)); // console: ['2', '7', '100']
    
    展开全文
  • https://blog.csdn.net/sunnywuxian/article/details/89395651

    https://blog.csdn.net/sunnywuxian/article/details/89395651

    展开全文
  • Here are a few ways toremove an item from an array using JavaScript. All the method describeddo not mutate the original array, and instead create a new one. If you know the index of an item ...

    Here are a few ways to remove an item from an array using JavaScript.

    All the method described do not mutate the original array, and instead create a new one.

    If you know the index of an item

    Suppose you have an array, and you want to remove an item in position i.

    One method is to use slice():

    const items = ['a', 'b', 'c', 'd', 'e', 'f']
    const i = 2
    const filteredItems = items.slice(0, i).concat(items.slice(i + 1, items.length))
    // ["a", "b", "d", "e", "f"]
    

    slice() creates a new array with the indexes it receives. We create a new array, from the start to the index we want to remove, and concatenate another array from the first position following the one we removed to the end of the array.

    If you know the value

    In this case, one good option is to use filter(), which offers a more declarativeapproach:

    const items = ['a', 'b', 'c', 'd', 'e', 'f']
    const valueToRemove = 'c'
    const filteredItems = items.filter(item => item !== valueToRemove)
    // ["a", "b", "d", "e", "f"]
    

    This uses the ES6 arrow functions. You can use the traditional functions to support older browsers:

    const items = ['a', 'b', 'c', 'd', 'e', 'f']
    const valueToRemove = 'c'
    const filteredItems = items.filter(function(item) {
      return item !== valueToRemove
    })
    // ["a", "b", "d", "e", "f"]
    

    or you can use Babel and transpile the ES6 code back to ES5 to make it more digestible to old browsers, yet write modern JavaScript in your code.

    Removing multiple items

    What if instead of a single item, you want to remove many items?

    Let’s find the simplest solution.

    By index

    You can just create a function and remove items in series:

    const items = ['a', 'b', 'c', 'd', 'e', 'f']
    
    const removeItem = (items, i) =>
      items.slice(0, i-1).concat(items.slice(i, items.length))
    
    let filteredItems = removeItem(items, 3)
    filteredItems = removeItem(filteredItems, 5)
    //["a", "b", "c", "d"]
    

    By value

    You can search for inclusion inside the callback function:

    const items = ['a', 'b', 'c', 'd', 'e', 'f']
    const valuesToRemove = ['c', 'd']
    const filteredItems = items.filter(item => !valuesToRemove.includes(item))
    // ["a", "b", "e", "f"]
    

    Avoid mutating the original array

    splice() (not to be confused with slice()) mutates the original array, and should be avoided.

     

    原文链接:https://flaviocopes.com/how-to-remove-item-from-array/

    展开全文
  • es6删除数组某一项

    千次阅读 2018-08-17 15:41:27
    先找到数组是否存在,再splice list.splice(list.findIndex(v =&gt; v.id === id), 1)
  • ES6快速删除数组中的某条数据

    千次阅读 2019-08-14 10:25:18
    //这是vue methods中的一个方法 deleteCarEvent(carID){ const _this = this; console.log('要删除的carID为:' + carID) deleteCar(carID).then(function(resolve){ console.log(resolve) //ES6快速删除某...
  • JavaScript 之 ES6 去除数组重复元素

    千次阅读 2019-12-27 10:13:50
    1、运用ES6的Set数据结构 、 Array.from()将其他类型转换为数组 如 set,map, 对象(对象需要有length和属性名可以转换为下标 如 {0: '1', 1: 'te', 2: 'xi', "length": 3}) 运用 Array.from() 函数: ...
  • ES6 操作数组的并集/交集/差集

    万次阅读 2017-09-08 09:55:57
    使用ES6 操作数组let a = new Set([1, 2, 3]); let b = new Set([3, 5, 2]); // 并集 let unionSet = new Set([...a, ...b]); //[1,2,3,5] // 交集 let intersectionSet = new Set([...a].filter(x => b.has(x))); /...
  • ES6常用数组方法

    千次阅读 2019-10-28 11:33:50
    今天很高兴,连续收到 众安保险,阿里巴巴国际UED团队 和 阿里口碑的邀请。...1- 数组去重 var arr = [1,2,3,4,3,4]; var arr2 = [...new Set(arr)]; 这个时候arr2就是去重后的数组~ 2- 交换两个变量
  • let arr = [1,4,3] arr.splice(arr.findIndex(index =&...复制代码splice() 方法通过删除现有元素和/或添加新元素来更改一个数组的内容。 var myFish = ['angel', 'clown', 'mandarin', 'sturgeon']; m...
  • 包含ES6所有数组方法

    千次阅读 2019-09-07 03:59:13
    今晚学习《ES6标准入门(第3版)》第8章-数组的扩展,发现好多关于数组的方法已经忘的差不多了,赶紧连夜充下电。 1.arr.push() 从后面添加元素,返回值为添加完后的数组的长度 2.arr.pop() 从后面删除元素,只能是一...
  • es6合并数组,去掉重复的数据

    千次阅读 2019-10-10 17:26:08
    function combine() { let arr = [].concat.apply([], arguments... //没有去重复的新数组 return Array.from(new Set(arr)); } var m = [1, 2, 2], n = [2, 3, 3]; console.log(combine(m, n)); // [1,2,3] ...
  • ES6 Array数组方法大全

    2019-03-20 11:20:25
    ES6 Array数组方法大全 #数组浅拷贝和深拷贝的区别 浅拷贝 如果数组元素是基本类型,就会拷贝一份,互不影响,而如果数组元素是数组或者对象,就会拷贝对象的和数组的引用,我们无论在新旧数组进行修改,两者都会...
  • 1 arr.push() 从后面添加元素,返回值为添加完后的数组的长度 let arr = [1,2,3,4,5] console.log(arr.push(5)) // 6 console.log(arr) // [1,2,3,4,5,5] 2 arr.pop() 从后面删除元素,只能是一个,返回值是删除的...
  • 如何使用ES6实现数组去重,第一种方法 "Set",第二种方法 “Filter”,第二种方法 “Filter”,有详细实现过程。
  • ES6-数组的新方法

    千次阅读 2019-09-30 17:32:09
    1.1 from,将一个数组或者类数组变成数组,会复制一份 let olfArr = [1,2,3] let newArr = Array.from(olfArr); console.log(newArr) // [ 1, 2, 3 ] 1.2 Array.of,of是为了将一组数值,转换为数组 console.log...
  • 1、push() 尾端插入,返回数组长度 let arr = [1,"hello",true]; console.log(arr.push(22));//4 console.log(arr,'---arr');//[1, "hello", true, 22] console.log(arr.push(false,123));//6...
  • es6交换数组对象元素的位置

    千次阅读 2019-12-02 12:00:59
    1、findIndex查找元素在数组中的位置 2、通过结构赋值交换数组位置,可以多个同时调换 [arr0[mingIndex],arr0[lanIndex],arr0[lvIndex]] = [arr0[lvIndex],arr0[mingIndex],arr0[lanIndex]]; 左边是元素在数组中的...
  • es6常用数组操作及技巧汇总

    千次阅读 2018-05-21 15:57:05
    合并多个数组,返回合并后的新数组,原数组没有变化。const array = [1,2].concat(['a', 'b'], ['name']); // [1, 2, "a", "b", "name"]2. array.every(callback[, thisArg]);检测...
  • 数组 let arr = ['1', '2', '3', '4', '5', '6'] // 原始数组 arr.push('7') // 往数组末尾添加一项 ['1', '2', '3', '4', '5', '6', '7'] arr.unshift('-1') // 往数组前面添加一项 ['-1', '1', '2', '3', '4', '5'...
1 2 3 4 5 ... 20
收藏数 19,623
精华内容 7,849
关键字:

es6删除数组