哪些浏览器不支持对象原型(prototype)的 get 和 set 方法?我相信这是 ES5 的一个特性,我知道它在 Chrome 中有效,但我想知道它是否可以安全地用于 ajax 应用程序。这是一个例子:
var foo = function () {};
foo.prototype = {
get name () {
return this._name;
},
set name (n) {
this._name = n || "bar";
}
};
最佳答案
这是为您准备的兼容性表。
http://kangax.github.com/es5-compat-table/
请参阅 Getter in property initializer
和 Setter in property initializer
行。
根据表格:
- 火狐 4
- Safari 5
- Chrome 7-11
其他浏览器(包括 IE9)没有给出 Yes
或 No
,所以它们可能未经测试。我很确定 IE9 支持它。
关于Javascript 在浏览器中获取和设置可用性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6012897/