一切的起因是本人在学习新知识中碰到这样一个案例
var arr = 'aabcoefoxyozzopp';
//统计出以上字符串各字母的数量
结果代码如下(包括个人逻辑理解):
var arr = 'aabcoefoxyozzopp';
var num = {}; //第1步 此处声明了一个新对象(空)
for(var i = 0;i < arr.length;i++) { //第2步 通过for循环遍历arr
var time = arr.charAt(i); //使用内置对象charAt来通过索引号指出字符串中对应的字母
if(num[time]) { //第3步 通过if来判断num是否已经有time,有的话num[time]++
num[time]++;
} else { //没有的话 那就赋值为 1 ,因为这是第一次遍历出的结果
num[time] = 1;
}
}
console.log(num); //最后一步输出结果
输出结果后浏览器控制台的反馈是以下这样的:
整个代码运行的很顺利,没有什么难点,偏偏卡住我思想让我感到疑惑的是第三步中的以下红色代码部分