我正在开发一个小项目,需要我将数字/运算符推送到数组中。这样做时,JavaScript控制台告诉我无法推送到未定义的数组。我不确定这意味着什么。这是我的代码的一小部分。
run: function(clicked){
var numbers = [];
var operations = [];
switch(clicked){
case "0":
case "1":
case "2":
case "3":
case "4":
case "5":
case "6":
case "7":
case "8":
case "9":
document.getElementById("dis1").innerHTML += clicked;
break;
case "point":
document.getElementById("dis1").innerHTML += ".";
break;
case "mul":
this.numbers.push(document.getElementById("dis1").innerHTML);
document.getElementById("dis1").innerHTML = "";
document.getElementById("dis1").innerHTML += "*";
console.log(numbers);
break;
如上所述,这只是一个小片段,因此未公开的功能等。
答案 0 :(得分:2)
您滥用this
您应该使用numbers.push
而不是this.numbers.push