js shift()方法删除数组中的第一个元素

文章发布于 2023-06-14

shift()方法删除数组中的第一个元素,并返回被删除的元素。影响原数组。

兼容性

所有主流浏览器都支持

返回值

返回被删除的元素。元素类型可以是字符串、数字、数组、布尔值、对象。

如果是删除的空数组,则返回 undefined

实例

删除数组第一个元素
删除数组的第一个元素有几种方法

通过下标删除

slice()方法删除数组元素,原数组不变。

splice()方法删除数组元素,原数组会改变。

var arr = [1,2,3,5];
var result = arr.slice(0 ,1) 
console.log(result) // [1]
console.log(arr)    // [1,2,3,5];

// arr数组会被改变
var res = arr.splice(0 ,1)
console.log(res)    // [1]
console.log(arr)    // [2,3,5]

通过shift()方法删除

和slice,splice方法返回值略有点不同

var arr = [1,2,3,5];
var res = arr.shift()
console.log(res)    //1
console.log(arr)    //[2, 3, 5]

删除非数组
shift()方法是删除数组类型第一个元素,使用shift()方法删除非数组类型时,会报类型错误。

var obj = {}
const result = obj.shift()
console.log(result)  //Uncaught TypeError: obj.shift is not a function