'onhashchange'in(window)
in()
工作并不奇怪,因为 new(XMLHTTPRequest)
或 typeof(x)
是此构造的其他示例,但不必将字符串和 in
分开。
这是符合 ECMAScript 规范的吗?它适用于 Chrome 和 FF,尚未测试 IE。
最佳答案
据我所知,在此特定实例中是否将 window
括在括号中没有区别。无论哪种方式,它都会在 window
对象上检查此成员。
如果您使用空格可能会减少混淆:
'onhashchange' in (window)
与
相同'onhashchange' in window
in
不是函数,但是当您删除空格时,我可以看到您是如何阅读它的。将 window
括在括号中的一个好处是您可以缩小代码:
'onhashchange'in(window)
没有括号就无法完成的事情。
关于javascript - 为什么 'onhashchange' in(window) 有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10442058/