Después de observar en varios repositorios y sitios webs de internet al terminar hemos descubierto la resolución que te compartimos aquí.
Solución:
Corto y fácil, ensartar el array y comparar como cadenas
function isArrayInArray(arr, item)
var item_as_string = JSON.stringify(item);
var contains = arr.some(function(ele)
return JSON.stringify(ele) === item_as_string;
);
return contains;
var myArray = [
[1, 0],
[1, 1],
[1, 3],
[2, 4]
]
var item = [1, 0]
console.log(isArrayInArray(myArray, item)); // Print true if found
consulta alguna documentación aquí
un anidado array es esencialmente un 2D array, var x = [[1,2],[3,4]]
sería un 2D array ya que lo referencia con 2 índices, por ejemplo x[0][1]
sería 2
.
En su pregunta, podría usar un bucle simple para saber si están incluidos, ya que esto no es compatible con matrices complejas:
var x = [[1,2],[3,4]];
var check = [1,2];
function isArrayInArray(source, search)
for (var i = 0, len = source.length; i < len; i++)
if (source[i][0] === search[0] && source[i][1] === search[1])
return true;
return false;
console.log(isArrayInArray(x, check)); // prints true
Actualización que representa cualquier longitud array
function isArrayInArray(source, search)
var searchLen = search.length;
for (var i = 0, len = source.length; i < len; i++)
// skip not same length
if (source[i].length != searchLen) continue;
// compare each element
for (var j = 0; j < searchLen; j++)
// if a pair doesn't match skip forwards
if (source[i][j] !== search[j])
break;
return true;
return false;
console.log(isArrayInArray([[1,2,3],[3,4,5]], [1,2,3])); // true
No puedes hacer eso. Instancia que tienes que hacer algo por tu cuenta.. primero tienes que hacer un foreach desde tu array que desea buscar y ejecutar la función 'compareArray' para cada elemento de su array .
function compareArray( arrA, arrB )
//check if lengths are different
if(arrA.length !== arrB.length) return false;
for(var i=0;i
Sección de Reseñas y Valoraciones
Si posees alguna indecisión o disposición de aclararse nuestro artículo eres capaz de ejecutar una explicación y con deseo lo estudiaremos.