下面我尝试将字符串数组传递给一个函数,该函数将唯一的单词添加到words数组中,如果该单词已经存在于数组中,则增加相应元素在count数组中的计数:
var words = [];
var counts = [];
calculate([a, b]);
calculate([a, c]);
function calculate(result) {
for (var i = 0; i < result.length; i++) {
var check = 0;
for (var j = 0; i < tags.length; i++) {
if (result[i] == tags[j]) {
check = 1;
counts[i] = counts[i] + 20;
}
}
if (check == 0) {
tags.push(result[i]);
counts.push(20);
}
check = 0;
}
}
然而,实际输出却是这样的:
单词 = a,b 数量 = 2,1
当我期望它是这样的: 单词 = a,b,c 数量 = 2,1,1
非常感谢您提前的任何帮助
words
数组,但从未使用过。你使用了一个从未声明的tags
数组。我猜它们应该是同一个数组吧? - flowstoneknightj
。将j=0
改为j=0; j < tags.length; j++
。 - Jindra Helcl