我遇到了这样的数组问题。首先,我有一个数组和一个字符串我必须比较这个数组和这个字符串。如果这个数组有一个与字符串元素相同的元素,我必须创建一个包含这个元素的新数组。例如:
mang: ['Javascript', 'PHP', 'H PHP']
chui = "PHP">
当我们比较"chuoi"one_answers"管理",你可以看到,我们有"PHP",所以我必须创建数组['PHP']
这是我的代码(我的想法)
function findStringsInArrayByKeyword(keyword, strings) {
var chuoi = "PHP";
var mang = ['Javascript', 'PHP', 'Học PHP'];
mang.forEach(function(a)){
if (a===chuoi) {
return [a];
}
}
}
但是它仍然不运行,你能给我一些建议吗?非常感谢您的宝贵时间。
forEach
不返回任何值。在这种情况下,可以使用reduce
function findStringsInArrayByKeyword(keyword, strings) {
var chuoi = "PHP";
var mang = ['Javascript', 'PHP', 'Học PHP'];
return mang.reduce((acc, curr) => {
if (curr === chuoi) {
acc.push(curr);
}
return acc;
}, [])
}
console.log(findStringsInArrayByKeyword())