У меня странная проблема, и я не могу понять, что вызывает это.
У меня в JavaScript есть массив Объектов. Точно так же, как этот:
var test = [{"title":"one"}, {"title":"two"}, {"title":"three"}, {"title":"four"}, {"title":"five"}, {"title":"six"}, {"title":"seven"}, {"title":"eight"}, {"title":"nine"}];
Я сейчас пытаюсь выбрать семь полных случайных записей (не имеет значения, выбираю ли я один и тот же несколько раз), добавить некоторые значения к объектам и pu sh это в новый массив. Как это:
var schedule = [];
for(var i = 0 ; i < 7 ; i++) {
var randomNumber = Math.floor(Math.random() * (test.length - 1));
var temp = test[randomNumber];
temp["id"] = i;
schedule.push(temp);
}
То, что я ожидаю стать: массив, содержащий следующие объекты:
[{"title":"one", 0}, {"title":"three", 1}, {"title":"one", 2}, {"title":"two", 3}, {"title":"five", 4}, {"title":"one", 5}, {"title":"eight", 6}, {"title":"two", 7}]
НО, и это то, чего я действительно не понимаю, каждый раз, когда объект переприменяется и выталкивается в массив, перезаписывает свои старые записи. Я становлюсь массивом, подобным этому:
[{"title":"one", 5}, {"title":"three", 1}, {"title":"one", 5}, {"title":"two", 7}, {"title":"five", 4}, {"title":"one", 5}, {"title":"eight", 6}, {"title":"two", 7}]
Может кто-нибудь объяснить мне это?