我有一个从 JSON 创建的 JavaScript 对象。由于 JS5 getter 和 setter,我真的需要将它的原型属性设置为不同的对象。这是我需要在 Chrome 上运行的示例:
function MyObj() { }
MyObj.prototype = {
get myProp : function () { return this._myProp; },
set myProp : function (arg) { this._myProp = arg; }
}
... stuff ...
var instance = JSON.parse(result);
instance.constructor = MyObj;
instance.__proto__ = MyObj.prototype;
使用此代码,我可以instance
使用原型中定义的 getter 和 setter 获取和设置属性。但是,这不是可移植的,并且不适用于 IE(我认为也不是节点)。
这样做的正确和便携方式是什么?