new object()未定义?

时间:2013-01-30 02:22:54

标签: javascript html5 html5-canvas

在我学习JavaScript的尝试中,我提出了这个画布绘图的想法。基本上,我将坐标存储在数组中,脚本将自动在画布上绘制按钮。每个按钮需要8个坐标,x1y1x2y2等...(我甚至可能会将这些按钮用作以后的链接; p)。我遇到的问题是,根本没有运行,Chrome检查器控制台在此行显示“object is undefined”:“button = new object();

感谢任何帮助。 利奥

function loadMenu() {
    //Initialize Canvas
    var canvas = document.getElementById("menu_canvas");
    var context = canvas.getContext("2d");

    //Button Data
    var buttonData = [59, 0, 19, 40, 128, 40, 168, 0];
    //Create Buttons
    var i = 1;
    while (i < buttonData.length) {
        button = new object();
        for (var j = i; j != i + 8; j++) {
            if (j % 2 == 0) {
                button.X[j] = buttonData[j - 1];
            } else {
                button.Y[j] = buttonData[j - 1];
            }
        }
        drawButton(button);
        i = i + 8;
    }
    //Begin drawing buttons
    function drawButton(button) {
        context.beginPath();
        context.moveTo(button.X1, buttonX2);
        for (k = 2; k != 4; k++) {
            context.lineTo(buttonX[k], buttonY[k]);
        }
        context.closePath();
        context.fillStyle = "red";
        context.fill();
    }
}

1 个答案:

答案 0 :(得分:2)

您必须将其大写:

button = new Object();

Javascript区分大小写。

或者,您可以使用对象文字(如Nile所述):

button = {};