return this._value
},
set value; (val) {
this._value = val;
}
}
最後のメソッドは、単一のオブジェクトに作用する Object の静的メソッド defineProperty を使用します。 ES5 のカテゴリに属するはずです。現在
は Chrome のみがこのメソッドをサポートしているようです。実際、Ie8 もサポートしていますが、操作対象は Dom ノード (Dom ノード) に限定されています。
を参照してください。 IEBlog
については、
MDN
を参照してください。
コードをコピーします
コードは次のとおりです。以下のように:
var Sandy = {}, rValue;
Object.defineProperty(sandy, 'value' ,
{
'set' : function(val) {
rValue = val;
},
'get' : function() {
return rValue;
},
'enumerable' : true,
'configurable' : true
}
)
//Ie8
Object.defineProperty(document.body, "description", {
get : function () {
return this.desc;
},
set : function (val) {
this.desc = val;
}
});
document.body.description = "コンテンツコンテナ"
// document.body.descriptionここでは「Content Container」を返します。
'enumerable','configuralbe' は、ES5 仕様のプロパティ属性 (属性特性) に属します。ここでは説明しません。 ES5 のドキュメントを直接検索してください。