Ste*_*den 2 javascript regex arrays string count
我有一个数组:
var locations = ['Afghanistan','Albania','Algeria','New York'];
Run Code Online (Sandbox Code Playgroud)
和一个字符串:
var string = 'I love Afghanistan New York Afghanistan Andorra Andorra Algeria New York';
Run Code Online (Sandbox Code Playgroud)
我想计算数组中每个关键字出现在字符串中的次数,但无法找出最佳方法.
这是我的版本:
function countItems(a, s) {
var x, i, output = {};
for (x = 0; x < a.length; x++) {
i = 0;
output[a[x]] = 0;
while ((i = s.indexOf(a[x], i)) > -1) {
output[a[x]]++;
i++
}
}
return output;
}
var result = countItems(locations, string);
// result['Albania'] === 0
Run Code Online (Sandbox Code Playgroud)