关于jQuery source ==在窗口上的问题

时间:2011-01-31 02:00:19

标签: javascript jquery equals type-coercion

data: function( elem, name, data ) {
    if ( !jQuery.acceptData( elem ) ) {
        return;
    }
    elem = elem == window ? windowData : elem;

直接从jQuery源代码复制。

为什么使用elem === window不安全?

为什么jQuery在window对象上使用类型强制?

在IE浏览器中似乎存在top

的问题
top == window // true
top === window // false

1 个答案:

答案 0 :(得分:3)

请参阅here了解为什么在{1}}中检查具有===的窗口对象是不安全的。

我认为根本原因是IE与Windows操作系统紧密结合,因此您可以通过window引用各种操作系统对象,并且相等检查就会消失。那只是它没有正确处理全局host对象。

相关问题