我有一个对象数组,我想把一个元素压入数组的开头。
我有这个:
var TheArray = TheObjects.Array;
TheArray.push(TheNewObject);
它在结尾添加TheNewObject。我需要创建一个新的数组,添加TheNewObject到它,然后循环通过TheArray和添加每个元素到数组?
我有一个对象数组,我想把一个元素压入数组的开头。
我有这个:
var TheArray = TheObjects.Array;
TheArray.push(TheNewObject);
它在结尾添加TheNewObject。我需要创建一个新的数组,添加TheNewObject到它,然后循环通过TheArray和添加每个元素到数组?
当前回答
使用unshift,它通过在数组开头添加参数来修改现有数组:
TheArray.unshift(TheNewObject);
其他回答
对于unshift的丑陋版本,使用splice:
TheArray.splice(0, 0, TheNewObject);
使用.unshift()添加到数组的开头。
TheArray.unshift(TheNewObject);
关于unshift()上的doc请参见MDN,关于其他数组方法上的doc请参见这里。
供你参考,就像数组的末尾有.push()和.pop()一样,数组的开头也有.shift()和.unshift()。
使用unshift,它通过在数组开头添加参数来修改现有数组:
TheArray.unshift(TheNewObject);