精华内容
下载资源
问答
  • js数组删除

    2021-05-10 11:10:11
    与其他语言的数组有着很大的区别,JavaScript中的Array非常灵活。今天我就来总结了一下JavaScript中Array删除的方法。大致的分类可以分为如下几类: 1、length 2、delete 3、栈方法 4、队列方法 5、操作方法 6、...

    在JavaScript中,除了Object之外,Array类型恐怕就是最常用的类型了。与其他语言的数组有着很大的区别,JavaScript中的Array非常灵活。今天我就来总结了一下JavaScript中Array删除的方法。大致的分类可以分为如下几类:

    • 1、length
    • 2、delete
    • 3、栈方法
    • 4、队列方法
    • 5、操作方法
    • 6、迭代方法
    • 7、原型方法

    下面我对上面说的方法做一一的举例和解释。
    一、length
    JavaScript中Array的length属性非常有特点一一它不是只读的。因此,通过设置这个属性可以从数组的末尾移除项或添加新项,请看下面例子:

    var colors = ["red", "blue", "grey"]; //创建一个包含3个字符串的数组
    colors.length = 2;
    console.log(colors[2]); //undefined
    

    二、delete关键字

    var arr = [1, 2, 3, 4];
    delete arr[0];
    console.log(arr); //[undefined, 2, 3, 4]
    

    可以看出来,delete删除之后数组长度不变,只是被删除元素被置为undefined了。
    三、栈方法

    var colors = ["red", "blue", "grey"];
    var item = colors.pop();
    console.log(item); //"grey"
    console.log(colors.length); //2
    

    可以看出,在调用Pop方法时,数组返回最后一项,即”grey”,数组的元素也仅剩两项。
    四、队列方法
    队列数据结构的访问规则是FIFO(先进先出),队列在列表的末端添加项,从列表的前端移除项,使用shift方法,它能够移除数组中的第一个项并返回该项,并且数组的长度减1。

    var colors = ["red", "blue", "grey"];
    var item = colors.shift();
    console.log(item); //"red"
    console.log(colors.length); //2
    

    五、操作方法
    splice()恐怕要算最强大的数组方法了,他的用法有很多种,在此只介绍删除数组元素的方法。在删除数组元素的时候,它可以删除任意数量的项,只需要指定2个参数:要删除的第一项的位置和要删除的项数,例如splice(0, 2)会删除数组中的前两项。

    var colors = ["red", "blue", "grey"];
    var item = colors.splice(0, 1);
    console.log(item); //"red"
    console.log(colors); //["blue", "grey"]
    

    六、迭代方法
    所谓的迭代方法就是用循环迭代数组元素发现符合要删除的项则删除,用的最多的地方可能是数组中的元素为对象的时候,根据对象的属性例如ID等等来删除数组元素。下面介绍两种方法:
    第一种用最常见的ForEach循环来对比元素找到之后将其删除:

    var colors = ["red", "blue", "grey"];
    colors.forEach(function(item, index, arr) {
    if(item == "red") {
    arr.splice(index, 1);
    }
    });
    

    第二种我们用循环中的filter方法:

    var colors = ["red", "blue", "grey"];
    colors = colors.filter(function(item) {
    return item != "red"
    });
    console.log(colors); //["blue", "grey"]
    

    代码很简单,找出元素不是”red”的项数返回给colors(其实是得到了一个新的数组),从而达到删除的作用。
    七、原型方法
    通过在Array的原型上添加方法来达到删除的目的:

    Array.prototype.remove = function(dx) {
    if(isNaN(dx) || dx > this.length){
    return false;
    }
    
    for(var i = 0,n = 0;i < this.length; i++) {
    if(this[i] != this[dx]) {
    this[n++] = this[i];
    }
    }
    this.length -= 1;
    };
    var colors = ["red", "blue", "grey"];
    colors.remove(1);
    console.log(colors); //["red", "grey"]
    

    在此把删除方法添加给了Array的原型对象,则在此环境中的所有Array对象都可以使用该方法。尽管可以这么做,但是我们不推荐在产品化的程序中来修改原生对象的原型。道理很简单,如果因某个实现中缺少某个方法,就在原生对象的原型中添加这个方法,那么当在另一个支持该方法的实现中运行代码时,就可能导致命名冲突。而且这样做可能会意外的导致重写原生方法。

    展开全文
  • js 数组删除

    2018-12-07 14:32:45
    使用:delete 只是将数组对象清空,但是仍然占位存在 所以查到是undefined ,如果是删除数组中的某个属性,弊端是 数组长度不变 var obj = new Object(); obj["username"] = "username"; ...

    1、delete

    使用:delete 只是将数组对象清空,但是仍然占位存在  所以查到是undefined ,如果是删除数组中的某个属性,弊端是 数组长度不变

    var obj = new Object();
    
    obj["username"] = "username";
    
    console.log (obj.username);
    
    delete obj.username;
    
    console.log (obj.username);
    
    // 结果:
    
    //username
    
    //undefined

    2、splice:删除 / 替换

    splice(index,len,[item]) 
    // index 位置(下标)
    // len 删除长度
    // item 替换字符

     

    展开全文
  • JS 数组删除 splice和delete

     1、splice(详细说明:https://www.w3school.com.cn/jsref/jsref_splice.asp

    一般用法:array.splice(index,howmany,item1,.....,itemX)

    参数 描述
    index 必需。整数,规定从何处添加/删除元素,是开始插入/删除的数组元素的下标
    howmany 必需。整数,规定删除多少个元素。如果设置为 0,则不会删除元素
    item1, ..., itemX 可选。向数组添加的新元素

     

     

     

     

     

    例:

    //指定位置删除指定个数元素(多个)
    var arr = ['a','b','c','d'];
    var res = arr.splice(2,1);
    console.log(res); //返回被删除的元素:["c"]
    console.log(arr); //修改后的数组:["a", "b", "d"]
    
    //指定位置删除指定个数(0个)
    var arr = ['a','b','c','d'];
    var res = arr.splice(2,0);
    console.log(res); //返回被删除的元素:[]
    console.log(arr); //修改后的数组:["a", "b", "c", "d"]
    
    //指定位置删除元素同时插入元素
    var arr = ['a','b','c','d'];
    var res = arr.splice(2,1,'插入');
    console.log(res); //返回被删除的元素:["c"]
    console.log(arr); //修改后的数组:["a", "b", "插入", "d"]

     

    2、delete:用于删除对象的某个属性,或删除数组的某一项

    (详细说明:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/delete

    一般用法:

    delete object.property 
    delete object['property']
    delete array[index]
    
    参数 描述
    object / array 对象的名称,或计算结果为对象的表达式(数组)
    porperty / index 要删除的属性(下标)

    例:

    //删除对象的某个属性
    let obj = {
        name:'alax',
        age:18,
        sex:'男'
    }
    delete obj.age
    console.log(obj) //{name: "alax", sex: "男"}
    
    delete obj['sex']
    console.log(obj) //{name: "alax"}
    
    //删除数组中的某一项(不会改变原有数组长度)
    let arr =[1,2,3,4]
    delete arr[0]
    console.log(arr) //[empty, 2, 3, 4]

     

    展开全文
  • js 数组删除指定元素

    2020-12-20 19:01:03
    js 数组删除指定元素,js 数组并没有提供直接删除某一指定元素的方法,因此需要我们稍作处理 思路:首先找到要删除的元素的位置,然后使用 splice 方法进行删除 示例代码 删除数组 s 中的 ‘dd’元素 var s =...

    js  数组删除指定元素,js 数组并没有提供直接删除某一指定元素的方法,因此需要我们稍作处理

    思路:首先找到要删除的元素的位置,然后使用 splice 方法进行删除

     

    示例代码

    删除数组 s 中的 ‘dd’元素

    var s = ['s', 'dd', 're']
    s.splice(s.indexOf('dd'), 1)
    console.log(s)

    运行效果

     

     

    至此完

    展开全文
  • JS数组删除某个元素

    千次阅读 2017-04-06 11:22:27
    JS数组删除某个元素的方法实现的代码:使用数组迭代function removeElement(arr, ele){ var result = []; if(arr instanceof Array){ if(ele instanceof Array){ result = arr.filter(function(item){ var ...
  • js数组删除指定元素

    2017-06-15 14:24:46
    定义函数/** * js数组删除指定元素 * @param arr * @param val */ removeByValue(arr, val) { for (var i = 0; i ; i++) { if (arr[i] == val) { arr.s
  • js 数组删除元素,并获得真实长度

    千次阅读 2019-07-18 12:49:48
    前言:js数组删除一般采用数组的 splice 方法和 delete 方法,但是采用 delete 方法后直接数组.kength 来获取数组长度是获取不了真实长度的,下面详细讲解一下。 一、splice 方法  splice ( index , len , [ ...
  • JS 数组删除某一个元素

    万次阅读 2019-05-14 14:12:29
    JS 删除数组中某一个元素 方式一: 在Array原型对象上添加删除方法 // 查找指定的元素在数组中的位置 Array.prototype.indexOf = function(val) { for (var i = 0; i < this.length; i++) { if (this[i] =...
  • 作者:Duomly 译者:前端小智 来源:dev.to数组JS 最常见的一种数据结构,咱们在开发中也经常用到,在这篇文章中,提供一些小技巧,帮助咱们提高开发效率。1. 删除数组的重复项2. 替换数组中的特定值有时在创建代码...
  • 点赞再看,养成习惯 本文 GitHub ... 数组JS 最常见的一种数据结构,咱们在开发中也经常用到,在这篇文章中,提供一些小技巧,帮助咱们提高开发效率。1. 删除数组的重复项2. 替换数组中...
  • js数组 删除元素

    2019-10-07 10:04:46
    一直在使用js相关的东西,但很少作总结,今天遇到操作js数组的一些问题,对js的数组有了更进一步的认识!1、创建数组var array = new Array();var array = new Array(size);//指定数组的长度var array = new Array...
  • 内容来源:SegmentFault 社区专栏:终身学习者作者:前端小智数组JS 最常见的一种数据结构,咱们在开发中也经常用到,在这篇文章中,提供一些小技巧,帮助咱们提高开发效率。1. 删除数组的重复项2. 替换数组中的特定...
  • js数组删除第一个元素

    千次阅读 2019-01-29 16:50:48
    js数组删除第一个元素 &lt;script&gt; var a = ["乔布斯", "盖茨", "扎克伯格", "apple", "Ms", "facebook"]; document.write(a + "...
  • js数组删除的方法

    2021-01-27 19:29:14
    js数组删除,我建议大家使用splice函数,不要使用slice函数,因为slice是返回一个新数组,并不是从原来的数组中删除。 比如: let a=[111,222,333,444]; a.splice(2,1); 上面的代码运行后,a数组的值变成:[111,...
  • 我们想删除数组中所有的NaN其实很简单,利用js中 NaN !== NaN的特性console.log( NaN === NaN) // 结果: false那么我们就可以来写一个deleteNaN的方法来实现删除数组中NaN项的方法var a = [NaN ,1,21,32,NaN,41,5]; ...
  • let arr = ['1','2','3']; let a = '1'; arr.forEach((item, index, arr) { if (item === a) { arr.splice(index, 1); } });
  • js数组删除元素

    2017-07-17 14:41:05
    然后第二天 做题的时候 看到js有个splice()方法:向/从数组中添加/删除项目,然后返回被删除的项目(该方法会改变原始数组。) 可以一试: 语法: arrayObject.splice(index,howmany,item1,.....,itemX) 参数 ...
  • js 数组删除元素

    2020-04-29 17:21:56
    没有什么值不值得,生活本该努力 前端QQ群: 981668406 在此附上我的QQ: 2489757828 有问题的话可以一同探讨 我的github: 李大玄 我的私人博客: 李大玄 我的简书: 李大玄 我的CSDN: 李大玄 this.list.splice(index, 1...
  • 数组JS 最常见的一种数据结构,咱们在开发中也经常用到,在这篇文章中,提供一些小技巧,帮助咱们提高开发效率。1. 删除数组的重复项2. 替换数组中的特定值有时在创建代码时需要替换数组中的特定值,有一种很好的...
  • js 数组删除操作

    2018-12-24 14:10:55
    if ((this.tableFields).includes('monitoringLabelId')) { let index = this.tableFields.indexOf('... } includes 判断是否含有指定值,indexof从this.tableFields中检索字段的第一次出现位置,splice(返回删除内容)
  • 数组JS 最常见的一种数据结构,咱们在开发中也经常用到,在这篇文章中,提供一些小技巧,帮助咱们提高开发效率。1. 删除数组的重复项2. 替换数组中的特定值有时在创建代码时需要替换数组中的特定值,有一种很好的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,152
精华内容 2,060
关键字:

js数组删除