我想知道为什么myObj[temp] !== undefined
或myObj[temp] != undefined
与typeof(myObj[temp]) !== undefined
不同。前两个解决方案适用于下面的代码,但最后一个无效。
代码只是计算单词开头出现的每个字母出现的次数。
var words = ["bob", "steve", "jackson", "david","stop","donald"];
var myObj = new Object;
var temp;
for (i = 0; i < words.length; i++) {
temp = words[i].charAt(0);
if (myObj[temp] !== undefined) {
myObj[temp]++;
} else {
myObj[temp] = 1;
}
}
console.log(myObj)