Javascript 循环和数组-由于不合适,代码无法工作

Javascript 循环和数组-由于不合适,代码无法工作,javascript,jquery,arrays,loops,plot,Javascript,Jquery,Arrays,Loops,Plot,这是我的一段代码,对应于一个HTML文档,人们在其中输入格式为ax^2+bx+c的二次方程的a、b和c项。我遇到的问题可能是函数作用域的问题,或者将正确的变量放入数组。如果您查看代码JQuery部分中的D2数组(这与此无关),您将看到绘制图形所需的格式 <td><input id="Term 1" onchange="calculate();"></td> <td><input id="Term 2" onchange="calculate(

这是我的一段代码,对应于一个HTML文档,人们在其中输入格式为ax^2+bx+c的二次方程的a、b和c项。我遇到的问题可能是函数作用域的问题,或者将正确的变量放入数组。如果您查看代码JQuery部分中的D2数组(这与此无关),您将看到绘制图形所需的格式

<td><input id="Term 1" onchange="calculate();"></td>
<td><input id="Term 2" onchange="calculate();"></td>
<td><input id="Term 3" onchange="calculate();"></td>

var graphArray = {};
    function calculate(){
     var T1 = document.getElementById("Term 1");
     var T2 = document.getElementById("Term 2");
     var T3 = document.getElementById("Term 3");
     var U1 = parseFloat(T1.value);
     var U2 = parseFloat(T2.value);
     var U3 = parseFloat(T3.value);

        var yFunction = function(x) {
            return U1 * Math.pow(x, x) + U2 * x + U3;
        };


        for(var x = 1; x <= 20; x++) {
            graphArray.push([x, yFunction(x)]);
        }
        return graphArray;
    }


    $(document).ready(function(){
        var D1 = [[1, 4], [2, 8], [3, 16], [4, 32]];
        $.plot($("#placeholder"), [graphArray]);
    });
您应该使用graphArray=[]来声明空数组,它引发的主要错误是push不是有效的方法,因为它无法识别graphArray是数组。 我认为脚本标记和jquery的包含是出于懒惰而忽略的


我无法理解$.plot业务的含义,因此我不明白您为什么不应该在计算函数中声明graphArray,但我可能弄错了。

您没有问任何问题。很抱歉,我的懒惰冒犯了您。下次,我会把电脑屏幕打印出来,这样你们就可以准确地理解正在发生的一切。plot方法是用于绘制图形的jQuery插件的一部分,但您可以从有序对值中看到情况。我也用数组做过,事实上我用对象表示法是因为我在用数组做过尝试后尝试了不同的方法,但两种方法都不起作用。显然我太懒了,没法改变这个。但你是对的;我是新来的论坛,我会抑制我的懒惰为未来的职位:pNo问题。。。我刚刚提到,希望这是懒惰,但人们不能确定:也许你的问题只是缺少正确的语法。您不需要显示脚本标记和外部库的包含,但是当我忽略明显的代码块时,我尝试分离代码块。