题解 | FED41 #头部插入元素#

头部插入元素

https://www.nowcoder.com/practice/6702abe9efcd482aac433f60896d9e1a

将第二个参数插入第一个参数数组的头部,并且以数组的形式返回
function _unshift(array,value) {
    // 补全代码
    //将第二个参数插入第一个参数数组的头部,并且以数组的形式返回
    
    /*法一:挨个后移*/
    for(let i=array.length;i>0;i--){
        array[i]=array[i-1];
    }
    array[0]=value;
    return array;
    
    /*法二:数组的splice方法:splice(从哪添加,删除个数 默认从第一个开始删,新元素1,...,新元素)*/
    array.splice(0,0,value);
    return array;
    
    
    /*法三:JS的Array的
        unshift():在头部添加元素,返回长度
        shift():删除数组的第一个元素,并返回该元素
        pop():删除最后一个元素,并返回该元素
        push():数组末尾添加元素,并返回长度    参考:https://www.w3school.com.cn/jsref/jsref_push.asp
    */
    array.unshift(value);
    return array;
    
    /*法四:数组的逆置方法reverse()*/
    array.reverse().push(value);
    return array.reverse();
    
    /*法五:rest参数,ES6的展开运算符,本题要求ES5*/
    let arr=[value,...array];
    array.length=0;
    arr.forEach(i=>{
       array.push(i); 
    });
    return arr;
    
    /*法六:数组拼接。of()方法是ES6的
        Array.of():据可变参数,创建新Array实例(即 将一组参数转化为数组)       Array(7):创建长度为7的空数组    参考:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/of
        concat():合并数组,返回新数组
    */
    const temp=Array.of(value).concat(array);
    array.length=0;
    temp.forEach(i=>{
        array.push(i);
    });
    return array;
}


全部评论

相关推荐

每晚夜里独自颤抖:你cet6就cet6,cet4就cet4,你写个cet证书等是什么意思。专业技能快赶上项目行数,你做的这2个项目哪里能提现你有这么多技能呢
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务