匹配来自阵列搜索与价值第一的值,所以我们说,我们有两个数组使用Javascript - 从其他阵列
const arr1 = [1, 2, 3, 4, 5];
const arr2 = [6, 7, 8, 9, 10, 4, 5,];
我想不用做两个for循环只返回第一个匹配值。所以不要通过从arr1
获取第一个值,然后在arr2
中查找第二个值。我需要返回4
。
在没有jQuery的React/Redux环境中工作可能。
匹配来自阵列搜索与价值第一的值,所以我们说,我们有两个数组使用Javascript - 从其他阵列
const arr1 = [1, 2, 3, 4, 5];
const arr2 = [6, 7, 8, 9, 10, 4, 5,];
我想不用做两个for循环只返回第一个匹配值。所以不要通过从arr1
获取第一个值,然后在arr2
中查找第二个值。我需要返回4
。
在没有jQuery的React/Redux环境中工作可能。
您可以使用find()
与includes()
方法。
const arr1 = [1, 2, 3, 4, 5];
const arr2 = [6, 7, 8, 9, 10, 4, 5,];
var r = arr1.find(e => arr2.includes(e));
console.log(r)
Ecmascript5溶液(用Array.some()
功能):
var arr1 = [1, 2, 3, 4, 5],
arr2 = [6, 7, 8, 9, 10, 4, 5,],
result;
\t
arr2.some(function(n){ return arr1.indexOf(n) !== -1 && (result = n) })
console.log(result);
你可以使用的Set
力量。
const
arr1 = [1, 2, 3, 4, 5],
arr2 = [6, 7, 8, 9, 10, 4, 5],
result = arr2.find((s => a => s.has(a))(new Set(arr1)));
console.log(result);
任何特殊的理由,为什么你不想要的循环? –
也许他的老师说不要这样做。 – epascarello
我使用了大量的数据,因此for循环需要很长时间才能执行。最后一个我花了大约20秒 –