我有这段代码:
createNewDice = () =>{
let dice;
for(var i=0; i < 6; i++){
dice[i] = new Dice();
}
console.log(dice, 'dice')
}
当我调用该方法时,我收到错误Cannot set property '0' of undefined
这不是创建我的类的新实例的方法吗?
答案 0 :(得分:1)
您尝试将属性设置为未定义的变量,因此在尝试将属性初始化变量定义为数组之前。
let dice = [];
答案 1 :(得分:1)
您需要先将骰子初始化为数组。
createNewDice = () =>{
let dice = [];
for(var i=0; i < 6; i++){
dice[i] = new Dice();
}
console.log(dice, 'dice')
}
编辑评论 -
如果你想给它们命名,那就做Pranav在使用对象时提出的建议。我可能采取与Pranav建议不同的方法,并按照 -
的方式做一些事情const dice = {
one: new Dice();
two: new Dice();
...
six: new Dice();
};