sdr*_*sdr 4 javascript underscore.js
使用isUndefined有什么好处吗?是否值得额外的函数调用?它不再具有可读性.
这个名字undefined可以被遮蔽.也就是说,有人可以做到这一点
var undefined = 5;
Run Code Online (Sandbox Code Playgroud)
并打破使用的代码x === undefined(参见底部的注释).为了安全地解决这个问题,你可以使用
typeof x === 'undefined'
Run Code Online (Sandbox Code Playgroud)
要么
x === void 0
Run Code Online (Sandbox Code Playgroud)
这正是下划线功能的作用.
注意:由于ECMAScript 5 undefined是只读的.在旧版浏览器中,undefined可以重新定义全局.即使在较新的浏览器中,undefined也可以被局部变量遮蔽:
function f() {
var undefined = 5;
return undefined;
}
f() // returns 5
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
556 次 |
| 最近记录: |