Javascript - 每个阵列都有一些'作为一把钥匙?

时间:2016-10-26 16:38:21

标签: javascript arrays key

我在另一个帖子上阅读('数据中的')以确定数组是否有密钥。

var capitals = [];
if(!('California' in capitals))
    capitals['California'] = 'Sacramento';
alert("The capital is " + capitals['California']);

在尝试使用"某些"来检查键时遇到问题。虽然它是一个数组方法:

var arr = [];
var mykey = 'some';
if(mykey in arr)
    alert("the word 'some' is in the array, value: " + arr[mykey]);

警告是:“有些人”这个词是'在数组中,值:function some(){[native code]}

我没有在数字键盘上设置任何内容,但是"在#34;由于它是一种方法,因此返回正数。鉴于"一些"在英语中是很常见的,如果" some"我应该如何在英语句子中索引单词?是保留密钥?

https://jsfiddle.net/fcmjL728/

1 个答案:

答案 0 :(得分:0)

您可以使用空对象进行计数,因为some是Array的方法。



var string = 'This is an example with some content and with some more words to count',
    count = Object.create(null); // a really empty object without prototypes from Object

string.split(' ').forEach(function (a) {
    var key = a.toLowerCase();
    count[key] = (count[key] || 0) + 1;
});

console.log(count);