我将新照片添加到我的数据库中,因为它们已上传到Instagram。假设我第一次调用Instagram API会返回数组中的5个照片对象[20,21,22,23,24]
。 20
是最新的,24
是最老的。几分钟后我的下一个电话会返回5个较新的照片对象[15,16,17,18,19]
。 15
是最新的19
"最老的" (但总是比20
更新),然后继续。
理想情况下,我希望我的数据库将对象存储为[15,16,17,18,19,20,21,22,23,24]
或[24,23,22,21,20,19,18,17,16,15]
。但是,如果我使用push
,我最终会使用[20,21,22,23,24,15,16,17,18,19]
,而如果我使用unshift
,我最终会使用:[19,18,17,16,15,24,23,22,21,20,]
答案 0 :(得分:1)
看起来您需要反转原始数组。
演示:
var x = [20, 21, 22, 23, 24];
var y = [15, 16, 17, 18, 19];
var pushed = [];
var unshifted = [];
var i;
for(i = 4; i >= 0; i--) {
pushed.push(x[i]);
unshifted.unshift(x[i]);
}
for(i = 4; i >= 0; i--) {
pushed.push(y[i]);
unshifted.unshift(y[i]);
}
console.log(pushed); // outputs [24, 23, 22, 21, 20, 19, 18, 17, 16, 15]
console.log(unshifted); // outputs [15, 16, 17, 18, 19, 20, 21, 22, 23, 24]