在JScript中,是否可以从外部实现看起来像对象属性的getter和setter?
作者:互联网
在尝试移植并且通常使用一些非浏览器代码时,我遇到了看起来像普通对象属性的getter和setter.像这样的东西:
js> var o = {
a: 4,
get b(){
return this.a + 3;
},
set b(val){
this.a = val - 3;
}
};
js> o.a
4
js> o.b
7
js> o.b=10
10
js> o.a
7
这似乎适用于Rhino和Spidermonkey的最新版本,但是在JScript(Windows脚本宿主)中是否可以实现或模拟行为(定义语法对我来说不那么重要)?
解决方法:
答案是否定的.设置器和getter只是功能类似的属性,但没有办法正确模拟语法.我有一个在使用行为的< = IE7中使用HTML元素模拟getter和setter的中途概念,但即使这样也比我想象的要困难得多.即使IE8只支持DOM对象上的getter / setter而不支持JScript对象,所以我认为这是JScript团队需要包含的东西,如果他们这样做的话. 如果只有人想过在原始的JScript / ECMAScript实现中包含setter和getter.
标签:javascript,get,set,wsh 来源: https://codeday.me/bug/20190710/1423462.html