下面是python的代码:
letter = ['a', 'b', 'c', 'd']
word = "Black"
for i in word:
if i in letter:
print(i)
所以,我想在JS中也这样做:
var letter = ['a', 'b', 'c', 'd'];
var word = "Black";
var dictionary = [];
var dictionaryCoincidence = [];
for (var i = 0; i < word.length; i++) {
dictionary.push(word[i]);
}
for (var i = 0; i < dictionary.length; i++) {
if (dictionary[i] == letter[i]) {
dictionaryCoincidence.push(dictionary[i]);
}
}
console.log(dictionary);
console.log(dictionaryCoincidence);
但是,它不起作用!你知道吗
可以使用Array.includes()检查某个元素是否属于数组,然后使用for ... of循环遍历字符串并执行以下操作:
const letter = ['a', 'b', 'c', 'd']; const word = "Black"; for (const char of word) { if (letter.includes(char)) console.log(char); }
; ^{pr2}$ ;本着函数式python的精神,我建议使用
filter
,因为它的工作方式类似于python中的filter
。这个问题是关于Python和Javascript的,所以:)var letter = ['a', 'b', 'c', 'd']; var word = "Black"; var filtered = word.split("").filter(x => letter.includes(x)) console.log(filtered)
;你真的不需要第二个循环。。只要检查单词[i]是否在字母数组中,就可以使用“includes”或“indexOf”来完成。。你知道吗
var letter = ['a', 'b', 'c', 'd']; var word = "Black"; var dictionary = []; var dictionaryCoincidence = []; for (var i = 0; i < word.length; i++) { dictionary.push(word[i]); if (letter.includes(word[i])) { dictionaryCoincidence.push(dictionary[i]); } } console.log(dictionary); console.log(dictionaryCoincidence);
;相关问题 更多 >
编程相关推荐