javascript - 如何在同一索引处输出不同的数组javascript

标签 javascript arrays loops for-loop

我的代码有问题:

代码:

var row = ["1", "1"];
    var column = ["1", "2"];
    var song = ["36", "39"];

    var arrayLength = row.length;
    var arrayLength2 = column.length;
    for (var i = 0; i < arrayLength; i++) {
    for (var e = 0; e < arrayLength2; e++) {
    var samples = document.querySelectorAll('[data-row-id="'+row[i]+'"][data-column-id="'+column[e]+'"][data-parent-id="-1"]');

    for(var f = 0; f < samples.length; f++) {
        var sample = samples[f];

        sample.setAttribute('data-sample-id', song);
        console.log("Colore cambiato");
    }


    }
    }

这段代码基本上要做的事情:

代码应如何运行:

<div class="cell" data-row-id="1" data-column-id="1" data-sample-id="36" data-parent-id="-1"></div>

<div class="cell" data-row-id="1" data-column-id="2" data-sample-id="39" data-parent-id="-1"></div>

问题:

但是当我运行它时,在 data-sample-id 中,两个 div 中都有“36,39”。 当数据行 ID 为“1”并且数据列 ID 为“1”时,我希望有“36”,当数据行 ID 为“1”且数据列 ID 为“1”时,我希望有“39”列 ID 为“2”!

我不知道如何解决,请帮助我!

更新

如果我在歌曲(song[i])之后添加“i”索引,则两个 Div 中都有“39”。 (http://prntscr.com/fq4wci)

已解决!

我只对所有数组使用了 i 索引并且工作完美,非常感谢:)

针对遇到我的问题的用户的代码:

    var row = ["1", "1", "2","3"];
    var column = ["1", "2", "1","4"];
    var song = ["36", "39", "45", "22"];
var arrayLength = row.length;
for (var i = 0; i < arrayLength; i++) {
var samples = document.querySelectorAll('[data-row-id="'+row[i]+'"][data-column-id="'+column[i]+'"][data-parent-id="-1"]');
for(var f = 0; f < samples.length; f++) {
            var sample = samples[f];
            sample.setAttribute('data-sample-id', song[i]);
            console.log("Colore cambiato");
        }

    }

最佳答案

试试这个:您需要使用 for 循环来设置您想要的类的属性。

var row = ["1", "1"];
    var column = ["1", "2"];
    var song = ["36", "39"];
var arrayLength = row.length;
var arrayLength2 = column.length;
for (var i = 0; i < arrayLength; i++) {
for (var e = 0; e < arrayLength2; e++) {
var samples = document.querySelectorAll('[data-row-id="'+row[i]+'"][data-column-id="'+column[e]+'"][data-parent-id="-1"]');


 }
        }

   for(var f = 0; f < samples.length; f++) {
   for(var s = 0; s < song.length; s++) {
            samples[f].setAttribute('data-sample-id', song[s]);
            console.log("Colore cambiato");
        }
        }

关于javascript - 如何在同一索引处输出不同的数组javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44852968/

相关文章:

javascript - 将函数传递给innerHTML

javascript - 如何从一个对象解构并保留相同的对象?

java - 数组索引越界帮助 (Java)

c++ - 查找数字字段中的最大总和

JavaScript JQuery 数组循环

javascript - get() 方法对 CollectionReference 有何作用?

java - 如何创建数组的搜索方法

javascript - Javascript 数组中的循环

loops - Apache james mailet 无限循环

javascript - 在网站上载/查看图像不起作用