简体   繁体   English

Javascript将值分配到Muti Dimensional数组中

[英]Javascript assigning values into Muti Dimensional array

Using Javascript, I need to create a matrix table that looks like the matrix below: 使用Javascript,我需要创建一个矩阵表,看起来像下面的矩阵:

0 1 1 1
1 0 1 1
1 1 0 1
1 1 1 0

The following code, to me, seems like that should be correct, however when I try to output arr[0][1] etc... no value show. 对我来说,下面的代码看起来应该是正确的,但是当我尝试输出arr [0] [1]等时......没有值显示。 Did I do something wrong in the following code: 我在以下代码中做错了什么:

var address = [
"...",
"....",
".....",
"......"

];

var arr = [];

for (i = 0; i < address.length; i++) 
{ 
    for (j = 0; j < address.length; j++) 
    { 
        //alert(i + " " + j);
        if (i=j)
        {
            arr[i][j]=0;
        }
        else
        {
            arr[i][j]=1;
        }
    }
}

You have 2 problems in your script 您的脚本中有2个问题

for (i = 0; i < address.length; i++) {
    //need to initialize arr[i] else `arr[i]` will return undefined
    arr[i]= [];
    for (j = 0; j < address.length; j++) {
        //need == not =
        if (i == j) {
            arr[i][j] = 0;
        } else {
            arr[i][j] = 1;
        }
    }
}

console.log(arr)

Where the if..else can be replaced by a ternary operator if..else可以由三元运算符替换

for (j = 0; j < address.length; j++) {
    arr[i][j] = i == j ? 0 : 1;
}

Demo: Fiddle 演示: 小提琴

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM