私はアルゴリズムのスキルを練習しようとしています。私は既にそこに書かれたアルゴリズムがあることを知っている、私はちょうど私自身でそれを試してみたいと私が得ることができる方法を参照してください。配列の繰り返し値を数えるJavaScript
INPUT:
arr1 = ['asd','ew','lol','asd']
予想される出力:
arr1 = ['asd', 'ew', 'lol', 'asd']
arr2 = []
results = {}
function checkIfExists(word) {
if (arr2.length != 0) {
for (i = 0; i < arr2.length; i++) {
if (arr2[i] == word) {
results[word] += 1
} else {
arr2.push(word)
results[word] = 1
}
}
} else {
arr2.push(word)
results[word] = 1
}
}
for (i = 0; i < arr1.length; i++) {
checkIfExists(arr1[i])
}
console.log(results)
実際の出力:
{ asd: 2, ew: 1, lol: 1 }
これは私のコードです:
{ asd: 2, ew: 2 }
これはあなたのコードです。あなたが直面している問題は何ですか?質問は何ですか? – Manish
最初の問題は、 'i'を宣言するために' var'を使用していないことです。これにより、両方のループが互いに干渉します。しかし、あなたがそれを修正しても、あなたは望みの結果を得られません。これまでにコードをデバッグするために何をしましたか? *具体的な質問がありますか? –
@Manish意図はかなり明確であるはずです。期待される結果と実際の結果があります。タイトルは、コードが何をすべきかを明らかにする。これはStack Overflowが提供するほとんどの質問より多くの情報です。 – Xufox