Estoy tratando de resolver un problema en el que tienes una matriz
array = [[a,b,c],[e,f,g],[h,i,j]]
Quiero recorrer la primera letra de la primera matriz, luego mirar la primera de todas las demás matrices y luego hacer una comparación, ya sea que sean iguales o no. No estoy seguro de cómo hacer esto dado que un ciclo pasará por todo en su matriz. Escribí un bucle anidado a continuación, pero sé que no es el enfoque correcto. Básicamente quiero algo que se parezca a if (array[0][0] == array[1][0] == array[2][0])
, luego repita para cada elemento en array[0]
var firstWord = array[0]; var remainderWords = array.slice(1); for(var i = 0; i < firstWord.length; i++){ for (var j = 0; i< remainderWords.length; j++){ if firstWord[i] == remaindersWord[j][i] }
Cualquier ayuda sería apreciada.
Use Array.every()
para verificar que una condición sea verdadera para todos los elementos de una matriz.
firstWord.forEach((letter, i) => { if (remainderWords.every(word => word[i] == letter)) { // do something } });
Puede usar tres bucles for
o .forEach
anidados para llegar a los elementos en la matriz de elementos remainderItems
. Prueba esto
var array = [['a', 'b', 'c'], ['b', 'f', 'g'], ['h', 'c', 'j']]; var firstWord = array[0]; var remainderWords = array.slice(1); firstWord.forEach((l, idx) => { remainderWords.forEach(arr => { arr.forEach(v => { if (l == v) { // matched do whatever you want with the variable here console.log(v) } }) }) })