将Javascript对象的新版本(副本)添加到具有不同值的Array?

时间:2015-02-23 08:31:41

标签: javascript oop

我认为这相当简单,但我不确定。我试图将对象的副本插入到数组中,更改其中一些对象的值。理想情况下,我想在没有构造函数的情况下执行此操作。这就是我所拥有的:

var person = {
  gender: 'Male',
  age: 50
}

var people = [];

for (var i = 0; i < 5; i++) {
  var favoriteWord = "hi";
  person.favoriteWord = favoriteWord;
  people.push(person);
}

for (var i = 0; i < 5; i++) {
  var favoriteWord = "goodbye";
  person.favoriteWord = favoriteWord;
  people.push(person);
}

console.log(people)

会发生什么是数组中的每个项都采用相同的favoriteWord属性。实质上,数组中的所有项都是相同的。

有没有办法改变这一点,还是我必须使用某个功能?

0 个答案:

没有答案