你怎么'搜索'在javascript中数组的数组? [英] How do you 'search' an array of arrays in javascript?
本文介绍了你怎么'搜索'在javascript中数组的数组?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我要搜索一个数组的数组,看看是否存在等于特定阵列我公司供应的数组。我试图用的indexOf()
但是这是行不通的。有没有人有一个很好的技术为这个?
变种进制= [['1','2'],['3','4'],['5','6']];
(['1','2'])ary.indexOf; //我想在这里得到0,或者类似的东西-1,如果它不是present
解决方案
\r
\r\r
\r VAR元= ['1','2'],['3 ','4'],['5','6']];\r
\r
函数包含(数组值){\r
对于(VAR I = 0; I< array.length,我++){\r
如果(阵列[我] ===值)\r
返回true;\r
如果(价值的instanceof阵列\r
&功放;&安培;数组[I]数组的instanceof\r
&功放;&安培; value.length ==阵列[我]。长度){\r
VAR发现= TRUE;\r
对于(VAR J = 0; J< value.length; J ++)\r
如果(价值[J] ==阵列[我] [J]。)\r
找到= FALSE;\r
如果(找到)\r
返回true;\r
}\r
}\r
返回false;\r
}\r
\r
的console.log(含有(进制,['1','2']));\r
的console.log(含有(进制,[1,'2']));\r
的console.log(含有(进制,['3','4']));
\r
I want to search an array of arrays and see if there exists an array equal to a certain array I supply. I tried to use indexOf()
but that wouldn't work. Does anyone have a good technique for this?
var ary = [['1','2'],['3','4'],['5','6']];
ary.indexOf(['1','2']); //I want to get 0 here, or something like -1 if it's not present
解决方案
var ary = [['1','2'],['3','4'],['5','6']];
function contains( array, value ){
for ( var i = 0; i < array.length; i++ ){
if ( array[i] === value )
return true;
if ( value instanceof Array
&& array[i] instanceof Array
&& value.length == array[i].length ){
var found = true;
for ( var j = 0; j < value.length; j++ )
if ( value[j] !== array[i][j] )
found = false;
if ( found )
return true;
}
}
return false;
}
console.log( contains( ary, ['1','2'] ) );
console.log( contains( ary, [1,'2'] ) );
console.log( contains( ary, ['3','4'] ) );
这篇关于你怎么'搜索'在javascript中数组的数组?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文