数组方法中 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() 高
posted @ 2022-08-29 12:17  CodeFan*  阅读(569)  评论(0编辑  收藏  举报