JavaScript中的变量阴影
下面我们有一个IIFE(像任何函数一样)创建一个局部范围。在该范围内有一个parseInt
功能。现在,由于浏览器中已经存在具有该名称的全局parseInt
函数,因此本地函数将掩盖全局函数 - 在IIFE内部,任何调用都parseInt
将调用本地函数,而不是全局函数。(仍然可以引用全局函数window.parseInt
。)
parseInt('123', 10); // the browser function is called(function() { function parseInt() { return 'overshadowed'; } parseInt('123', 10); // the local function is called})();parseInt('123', 10); // the browser function is called
是否有法律上的(ECMAScript规范)或事实(普通)名称?掩盖?超载?
守着一只汪
MMTTMM
达令说
相关分类