Javascript IN运营商兼容性

有人可以告诉我,哪个ECMA版本的IN操作符是可用的,哪些浏览器(版本)支持它?

说明:

IN运营商可以使用如下:

var myObject = { Firstname: 'Foo', Lastname: 'Bar' }; if('Lastname' in myObject){ // Lastname is an attribute of myObject } 

它在ECMAScript第3版中定义。 它可以在IE 5.5+以及Firefox,Chrome,Opera和Safari的所有使用版本中使用。

你可以使用它的安全知识,它会工作。

使用它来检查事件支持时,您应该谨慎小心。 除了较早的Firefox版本之外的所有实现都支持"eventname" in element中的"eventname" in element作为DOM事件的testing。

 "onclick" in document.body; // -> false in old Fx, true in others document.body.setAttribute("onclick", ""); typeof(document.body.onclick == "function"); // -> true in Fx 

根据MDC,它在JavaScript 1.4中实现 。

根据维基百科 :

  • Netscape Navigator 6.0
  • Firefox 1.0+
  • IE 5.5+
  • Opera 6.0+
  • Safari 3.0+
  • Chrome 1.0+

所以我认为你可能确定:)