参考文章:https://www.cnblogs.com/yun1108/p/9505294.html
老哥总结的真的很好,大家可以去给老哥点赞!
这是我根据其文章整理的笔记,在这里与大家分享一下~

    function print(index,arr) {
        console.log("---" + index + "---");
        console.log(arr);
    }
①length

通过减小列表的长度length强制删除最后一个元素

	var colors = ["red","blue","green"];
    //1--减小length强制删除最后一个元素
    colors.length -= 1;
    print(1,colors);

在这里插入图片描述

②delete关键词

根据下标删除,改位置会被undefine替代,列表长度不变

    //2--delete关键词
    colors = ["red","blue","green"];
    delete colors[0];
    print(2,colors);
    console.log(colors[0]);

在这里插入图片描述

③栈方法

pop()方法默认移除并返回列表最后一项

	//3--栈方法
    colors = ["red","blue","green"];
    var item = colors.pop();
    print(3,colors);
    console.log(item);

在这里插入图片描述

④队列方法

shift()方法默认移除并返回列表的第一项

    //4--队列方法
    colors = ["red","blue","green"];
    var item = colors.shift();
    print(4,colors);
    console.log(item);

在这里插入图片描述

⑤splice(a,b)方法

向splice()传递两个参数,第一个是开始的下标a,第二个为个数b,则会移除并返回列表第a个元素开始往后的b个元素,返回值为列表

	//5-splice()方法
    colors = ["red","blue","green"];
    var item = colors.splice(0,1);
    print(5,colors);
    console.log(item);

在这里插入图片描述

⑥通过迭代判断删除

通过forEach方法,删除符合条件的元素

	//6--迭代方法
    colors = ["red","blue","green"];
    colors.forEach(function (item,index,arr){
        if (item == "green") {
            arr.splice(index,1);
        }
    });
    print(6,colors);

在这里插入图片描述

通过filter方法,返回符合条件的元素列表

    colors = ["red","blue","green"];
    colors = colors.filter(function (item) {
        return item != "green";
    });
    print(6,colors);

在这里插入图片描述

⑦通过给原型Array添加方法来删除

通过给原型Array添加用于删除的方法来删除元素,好处在于可以复用

用于删除的方法可以很多,此处展示的为其中一种

    //7--原型方法
    Array.prototype.remove = function (index) {
        if (isNaN(index) || index > this.length) {
            return false;
        }else {
            for (i = 0, n = 0; i < this.length; i++) {
                if (this[i] != this[index]) {
                    this[n++] = this[i];
                }
            }
            this.length -= 1;
        }
    };
    colors = ["red","blue","green"];
    colors.remove(1);
    print(7,colors);

在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐