Javascript 如何防止每次访问属性时更改值

Javascript 如何防止每次访问属性时更改值,javascript,Javascript,我需要创建一个构造函数,该构造函数创建包含Id属性的对象,该属性的值是函数的输出 function rand(min, max) { return Math.ceil((max - min + 1) * Math.random()) + min - 1; } function generateId() { return Array(4).fill(1).map(value => rand(1000, 9999)).join('-'); } class LoyaltyCard {

我需要创建一个构造函数,该构造函数创建包含Id属性的对象,该属性的值是函数的输出

function rand(min, max) {
 return Math.ceil((max - min + 1) * Math.random()) + min - 1;
}

function generateId() {
  return Array(4).fill(1).map(value => rand(1000, 9999)).join('-');
}

class LoyaltyCard {
  constructor(name){
      this.name = name;
      this.id = generateId()
    }
}

var n = new LoyaltyCard('nnn')

当我像这样为Id属性赋值时,每次访问该属性时,它都会更改。如何设置“永久”值?

您的意思是什么?每次访问
n.id
。这里没有问题。看起来没有变化:实际的问题是什么?谢谢你们,伙计们!现在我明白了!我们应该在家庭作业中使用repl.it,每次我编写console.log(n)并按下run键时,我都会看到同一个对象具有不同的id。。。现在我明白了,这是因为repl.it从一开始就实现了代码。。。