と呼ばれるカスタマイズされたプロパティを定義しようとしていますuserdata
が、location.hash のようなオブジェクトでは機能しませんfalse, false
。2 つのアラート呼び出しで取得しました。
Object.defineProperty(Object.prototype, "userdata", {
value: false,
writable: true,
enumerable: true,
configurable: true
});
alert (location.hash.userdata);
location.hash.userdata = true;
alert (location.hash.userdata);
不変ですか?
独自のオブジェクトを定義すると、つまり
var a = {};
a.userdata = true;
正しく設定されますが、前の例が機能しない理由がわかりませんでした