Javascript 将for循环转换为数组过滤器
此javascript代码尝试使用Javascript 将for循环转换为数组过滤器,javascript,arrays,Javascript,Arrays,此javascript代码尝试使用数组.filter来获得更好的性能,而不是使用for循环“我猜”。不管怎么说,结果都不尽相同,正如人们所预期的那样。 它试图找出搜索词数组中包含的学生的姓名。 知道为什么吗?谢谢 让searchWords=['john','matt','mary']; 让学生=['matt','jack']; 让名称=[]; for(设i=0;i1“正确” 名称=[]; name=searchWords.filter(x=>students.filter(y=>student
数组.filter
来获得更好的性能,而不是使用for循环“我猜”。不管怎么说,结果都不尽相同,正如人们所预期的那样。
它试图找出搜索词
数组中包含的学生的姓名。
知道为什么吗?谢谢
让searchWords=['john','matt','mary'];
让学生=['matt','jack'];
让名称=[];
for(设i=0;i1“正确”
名称=[];
name=searchWords.filter(x=>students.filter(y=>students.indexOf(x)!=-1));
console.log(name.length);//=>3“不正确”
过滤线实质上增加了另一个回路。应该是
names = searchWords.filter(x => students.indexOf(x) !== -1);
过滤线实质上增加了另一个回路。应该是
names = searchWords.filter(x => students.indexOf(x) !== -1);
我只是回答…;-)哇,自从我上次使用javascript以来,它已经改变了。现在我们有了let
和lambda函数。酷。@0x499602D2它总是有lambda函数,但箭头语法是新的(它是按词汇设置的,而不是在调用中)。我只是回答…;-)哇,自从我上次使用javascript以来,它已经改变了。现在我们有了let
和lambda函数。酷。@0x499602D2它总是有lambda函数,但箭头语法是新的(它是按词汇而不是在调用中设置的)。