无法推送到数组,未定义。使用Javascript

时间:2014-10-06 14:59:38

标签: javascript arrays

我正在开发一个小项目,需要我将数字/运算符推送到数组中。这样做时,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;

如上所述,这只是一个小片段,因此未公开的功能等。

1 个答案:

答案 0 :(得分:2)

您滥用this

您应该使用numbers.push而不是this.numbers.push