我看到了一个 youtube 视频,展示了如何使用 Javascript 计算每个字母的出现次数,例如,当输入为 时"hello"
,函数将返回
{h:1 e:1 l:2 o:1}
像这样:
const obj = {};
for (let i = 0; i < wordInput.length; i++) {
const char = wordInput[i];
if (!obj[char]) {
obj[char] = 0;
}
obj[char]++;
}
为什么我们需要 if 语句?他说了诸如“其中一些未定义”之类的话,但我不确定这意味着什么,您能解释一下为什么我们需要if (!obj[char])
吗?
在循环的第一次运行中
i = 0
-----------
char = 'h'
obj = {}
obj[char] ==> obj['h'] ==> undefined
所以如果你尝试这样做obj[char]++ ==> obj['h']++
,它会抛出错误,因为它的值是undefined
。而是首先使用该if
语句将其初始化为 0 ,然后将其递增。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句