第一种

很简单的解决方案,声明一个新数组,循环遍历到原数组的倒数第二项push进新数组,返回新数组

function truncate(arr) {
    var m = [];
    for(var i = 0; i < arr.length – 1; i++){
        m.push(arr[i]);
    }
    return m;
}

第二种

利用splice()的删除、增加、替换功能

function truncate(arr) {
   var m = arr.slice(0);
   m.splice(m.length-1,1);
   return m;
}

第三种

利用slice()浅克隆,进行复制到末端的元素

function truncate(arr) {
    returnarr.slice(0,-1);
}

第四种

filter不止能够对比ele的单个值,对不符合的idx下标也可以做出对比返回是否保留相应的元素

function truncate(arr) {
    return arr.filter(function(ele,idx,arr){
        return arr.length – 1 !== idx;
    });
}

参考文章:https://blog.csdn.net/u013005050/article/details/78568163/

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注