【发布时间】:2011-12-30 20:46:20
【问题描述】:
我有一个对象数组,我想在数组的开头推送一个元素。
我有这个:
var TheArray = TheObjects.Array;
TheArray.push(TheNewObject);
它在末尾添加TheNewObject。我是否需要创建一个新数组,将TheNewObject 添加到其中,然后循环遍历TheArray 并将每个元素添加到数组中?
【问题讨论】:
标签: javascript
我有一个对象数组,我想在数组的开头推送一个元素。
我有这个:
var TheArray = TheObjects.Array;
TheArray.push(TheNewObject);
它在末尾添加TheNewObject。我是否需要创建一个新数组,将TheNewObject 添加到其中,然后循环遍历TheArray 并将每个元素添加到数组中?
【问题讨论】:
标签: javascript
使用unshift,它通过在开头添加参数来修改现有数组:
TheArray.unshift(TheNewObject);
【讨论】:
使用.unshift() 添加到数组的开头。
TheArray.unshift(TheNewObject);
doc on unshift() 见 MDN,doc on other array methods 见这里。
仅供参考,就像数组末尾有 .push() 和 .pop() 一样,数组开头有 .shift() 和 .unshift()。
【讨论】:
对于更丑陋的unshift,请使用splice:
TheArray.splice(0, 0, TheNewObject);
【讨论】:
unshift 听起来我正在从数组中删除一些东西(即使我不是)。 splice 听起来更像是我将两件事合并在一起