次のコードxFooでは、オブジェクト (またはそのプロトタイプ) がbar値 5 の実際のプロパティを持ち、実際のメソッドを持ちfoo()ます。これはどのようなオブジェクト表記ですか? xFoo.barこれは、ECMAScript 5 でプロパティを定義する方法ではありません。これは、関数get()をxFoo.foo持つオブジェクトであり、メソッドを持つオブジェクトであると予想していましたvalue()。ここで何が欠けていますか?
var XFoo = document.registerElement('x-foo', {
prototype: Object.create(HTMLElement.prototype, {
bar: {
get: function () {
return 5;
}
},
foo: {
value: function () {
alert('foo() called');
}
}
})
});
var xFoo = new XFoo();