未捕获类型错误:无法读取属性';0';“未定义”的定义;Javascript";

未捕获类型错误:无法读取属性';0';“未定义”的定义;Javascript";,javascript,Javascript,我正在做八字拼图题 我得到了一份工作 “未捕获的TypeError:无法读取未定义的”错误的属性“0” 运行此代码时: 对于(i=0;i您需要初始化第二级数组-startStateArr[i]=[]。如果不初始化,请对主数组执行相同操作 var startStateArr = []; // If not done for ( i = 0; i <= 2; i++ ) { startStateArr[i] = []; // Look at this line for ( j

我正在做八字拼图题

我得到了一份工作

“未捕获的TypeError:无法读取未定义的”错误的属性“0” 运行此代码时:


对于(i=0;i您需要初始化第二级数组-
startStateArr[i]=[]
。如果不初始化,请对主数组执行相同操作

var startStateArr = []; // If not done

for ( i = 0; i <= 2; i++ ) {
    startStateArr[i] = []; // Look at this line
    for ( j = 0; j <= 2; j++ ) {
        startStateArr[i][j] = document.getElementById("start" + i + j).value;
    }
}
var startStateArr=[];//如果未完成

对于(i=0;i是
startStateArr
定义的?@AjJohnson是的,它是。@Olian04但是,Javascript完全能够处理这个问题。它会自动将其他数字转换为字符串,即使字符串中只有一个值。@希望它能真正起作用,因为字符串在数字之前,如果它在最后,它们会被添加。@Yes您是c正确,但这并不是因为
它会自动将其他数字转换成字符串,即使字符串中只有一个值
。这是因为js是左强制的(而不是像我失败的记忆告诉我的那样是右强制的)。Aka:
'h'+1+2='h12'
但是
1+2+'h'='3h'
非常感谢^
var startStateArr = []; // If not done

for ( i = 0; i <= 2; i++ ) {
    startStateArr[i] = []; // Look at this line
    for ( j = 0; j <= 2; j++ ) {
        startStateArr[i][j] = document.getElementById("start" + i + j).value;
    }
}