Ben Cherry的优秀文章充分阐述了JavaScript中的提升.然而,我的问题是,我不能为这个臭名昭着的混淆犯罪者设想一个用例.请解释是否存在实际利用此语言功能的设计模式.
其次,是JavaScript独有的范围提升?
更新 ---我正在为满足我的好奇心的答案添加赏金:哪种设计模式实际上利用了JavaScript的提升行为?我理解为什么 JavaScript支持提升,但我想知道如何利用这个功能.
有没有标准的方法来做到这一点?我知道如何在Python,但在Javascript中最新最好的方式的关键首先检查,添加到字典中如果键已经存在,如果不符合,值1添加它,如果它存在,那么就增加当前计数.
像这样的伪代码:
var dict = {};
var new_item = "Bill"
If new_item not in dict:
dict[new_item] = 1
else:
dict[new_item] += 1
Run Code Online (Sandbox Code Playgroud)