题解 | #头部插入元素#
头部插入元素
https://www.nowcoder.com/practice/398fb800933145a785c973697fd62b02
1、直接插入
function _push(array,value) { // 补全代码 array[array.length] = value return array; }
2、扩展运算符
function _unshift(array,value) { return [ ...array,value]; }
实际上这样就行,但是由于这个地方只支持es5语法所以得重新遍历一遍就如下代码
function _push(array,value) { // 补全代码 let temp = [...array,value]; // 用临时数组保存结果 array.length = 0; // 将数组置空,不能使用 array = [] // 将结果放回原数组 temp.forEach(item=>{ array.push(item) }) return array }
3、push方法没啥说的
-该方法可以向数组的末尾添加一个或多个元素,并返回数组的新的长度
-可以将要添加的元素作为方法的参数传递,这样这些元素将会自动添加到数组的末尾
-该方法会将数组新的长度作为返回值返回
function _push(array,value) { return array.push(value); }
4、splice方法
splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。
注释:该方法会改变原始数组。
参数:
index —— 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
howmany —— 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
item1, …, itemX —— 可选。向数组添加的新项目。
返回值
Array —— 包含被删除项目的新数组,如果有的话。
function _push(array,value) { return array.splice(array.length, 0, value);; }