在现代的Chrome / Firefox / Opera中可以使用,但在IE8中无法使用。尚未在IE9中尝试过。如何使该跨浏览器兼容,包括IE7 +? (Fiddle here.)

var foo = {
    get test(){ return 'Works'; }
};

// foo.test should be 'Works'

我已经看到__defineGetter__的一些用法,但是在IE8中引发了“无法识别的方法”错误。

最佳答案

我不相信你可以。

IE8及更低版本中,属性访问仅是属性访问。如果不显式调用函数,则无法运行函数代码。

我认为在IE8中,您也许可以使用DOM元素,但我认为它不适用于常规本机对象。

关于javascript - 跨浏览器的Getter和Setter,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9106936/

10-11 06:51