数组方法中 push() 和 unshift() 的区别
数组方法有很多,而且用到的频率也是很高,特别是 push() 方法,而与之对应的另一个方法就是 unshift() ,那么这两个方法有什么区别呢??👇👇
一、push() 方法
push()
方法(在数组结尾处)向数组添加一个新的元素:
var webKnowledge = ["HTML", "CSS", "JS", "VUE"];
webKnowledge.push("REACT"); // 向 webKnowledge 添加一个新元素 REACT
//新数组为:["HTML", "CSS", "JS", "VUE", "REACT"]
push()
方法返回新数组的长度:
var webKnowledge = ["HTML", "CSS", "JS", "VUE"];
const x = webKnowledge.push("REACT"); // 新数组的长度
//x 的值为 5
二、unshift() 方法
unshift()
方法(在开头)向数组添加新元素,并“反向位移”旧元素,即将旧元素都左移(注意:这个方法会改变数组中元素的索引):
var webKnowledge = ["HTML", "CSS", "JS", "VUE"];
webKnowledge.unshift("REACT"); // 向 webKnowledge 添加一个新元素 REACT
//新数组为:["REACT", "HTML", "CSS", "JS", "VUE"]
unshift()
方法返回新数组的长度:
var webKnowledge = ["HTML", "CSS", "JS", "VUE"];
const x = webKnowledge.unshift("REACT"); // 新数组的长度
//x 的值为 5
三、两者的比较
1. 相同点:
- 都可以向数组中添加元素
- 都会改变数组的长度
- 都会返回新的长度
2. 不同点:
- push() 方法是在元素的末尾添加新的元素,unshift() 方法是在开头添加
- push() 方法不会改变原数组中元素的索引,unshift() 会改变原数组中元素的索引
- unshift() 比push() 慢,消耗的资源也更高
- push() 方法的使用场景和频率比 unshift() 高
分类:
JavaScript
标签:
JS基础篇