• 技术文章 >web前端 >前端问答

    es6 数组怎么移除元素

    青灯夜游青灯夜游2023-01-11 15:51:59原创70

    方法:1、用shift()删除第一个元素,语法“数组.shift()”;2、用pop()删除最后一个元素,语法“数组.pop()”;3、用splice()删除任意位置的元素,语法“数组.splice(位置,个数)”;4、用length删除尾部的N个元素,语法“数组.length=原数组长度-N”;5、直接赋予空数组“[]”来清空元素;6、用delete删除指定下标的一个元素。

    本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。

    方法1:使用shift()函数删除第一个数组元素

    array.shift()函数可以把数组的第一个元素从其中删除,并返回第一个元素的值;然后将余下所有元素前移 1 位,以填补数组头部的空缺。

    var a = [1,2,3,4,5,6,7,8];  //定义数组
    a.shift();
    console.log(a);

    输出结果为:

    1.png

    注:shift()方法会改变原数组,修改数组的长度!

    方法2:使用pop()删除最后一个数组元素

    array.pop()方法可以删除数组 array 中最后一个元素,并返回被删除的元素。

    var a = [1,2,3,4,5,6,7,8];  //定义数组
    a.pop();
    console.log(a)

    输出结果为:

    2.png

    注:pop()方法也会改变原数组,修改数组的长度!

    方法3:使用 splice() 删除任意位置的元素

    使用splice()可以从指定下标位置开始删除一个或多个元素。

    删除元素的语法:

    array.splice(index,howmany)

    只需要将第2个参数 howmany 设置为1,即删除任意index位置的一个元素。

    我们通过下面的例子来具体看看:

    var arr= [1,2,3,4,5];
    console.log(arr);
    
    arr.splice(1,1);
    console.log(arr);

    3.png

    利用splice() 方法我们也可以实现在数组开头和末尾删除元素的操作:

    var arr= [1,2,3,4,5];
    console.log(arr);
    
    arr.splice(0,1);
    console.log(arr);

    4.png

    var arr= [1,2,3,4,5];
    console.log(arr);
    
    //从倒数第1个元素开始,截取1个元素
    arr.splice(-1,1);
    console.log(arr);

    5.png

    方法4:利用length属性删除数组元素(甚至清空元素)

    数组的length属性一般是用来设置或返回数组中元素的数目,即设置或返回数组长度。

    我们可以利用设置数组长度的特性,将length属性的设置的比原长度小,即可从数组尾部删除一个或多个元素;如果值设置为0,就会删除全部数组,即清空数组!

    语法:数组对象.length=原数组长度-1;

    示例1:

    var a = [1,2,3,4,5,6,7,8];  //定义数组
    console.log(a)
    a.length=7;
    console.log(a)

    6.png

    示例2:

    var a = [1,2,3,4,5,6,7,8];  //定义数组
    console.log(a)
    a.length=0;
    console.log(a)

    7.png

    方法5:直接赋予空数组[]

    直接赋予空数组[]就会将之前的元素全部清空。

    var arr=new Array(1,2,3,4,5,6,7,8,9,10);
    console.log(arr);
    arr=[];
    console.log(arr);

    8.png

    这种方法并不是严格意义的清空数组,只是将arr重新赋值为空数组。

    方法6:利用delete运算符删除指定下标的一个元素

    我们都知道数组中的每个元素都有一个序号,这个序号从0开始,被称为下标(Index)。根据这个数组下标,我们可以使用 数组名[下标] 的形式来访问指定下标的元素。

    访问到指定元素后,就可以利用 delete运算符 来删除该元素,但数组长度不会发生改变;删除后的该元素会变为空位元素,

    var arr=new Array("香蕉","苹果","梨子","橙子","橘子","榴莲");
    console.log(arr);
    
    delete arr[1];  //删除下标为1的元素(第二个元素)
    console.log(arr);

    9.png

    空位元素可以读写,length 属性不排斥空位,空元素位返回值为 undefined

    console.log(arr[1]);

    2.png

    说明:空元素与元素的值为 undefined 是两个不同的概念,即使空元素的返回值也是 undefined。JavaScript 在初始化数组时,只有真正存储有值得元素才可以分配内存。

    【相关推荐:javascript视频教程web前端

    以上就是es6 数组怎么移除元素的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:ES6 JS数组
    上一篇:vite和webpack的区别是什么 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • js map方法是es6的吗• es6怎么删除数组中的相同元素• es6怎么查找某项是否存在• es6怎么去除字符串前后空格• es6暂时性死区是什么意思• es6 装饰器怎么理解
    1/1

    PHP中文网