为什么 jQuery 区分全局变量和局部变量的未定义检查
jQuery 核心样式指南提供了两种不同的方法来验证变量是否已定义:
让我们探讨 jQuery 方法背后的基本原理。
对于未声明的变量,typeof foo 返回“undefined”。然而,恒等比较 foo === undefined 会导致错误“foo is not Define”,因为 foo 在运行时不存在。
相反,对于局部变量(显式声明的),没有就会出现这样的错误。因此,jQuery对局部变量和对象的局部属性采用身份检查(变量===未定义)。这种方法使用起来很安全,因为声明的变量和属性总是被定义的,即使它们没有初始值。
但是,在处理全局变量时,会使用 typeof variable === "undefined" 来代替。这是因为全局变量可能会或可能不会声明,并且如果未声明变量,则使用变量 === undefined 会导致运行时错误。
以上是为什么 jQuery 使用不同的方法来检查全局和局部范围内的未定义变量?的详细内容。更多信息请关注PHP中文网其他相关文章!