即使没有在JS中创建对象,对象原型也会抛出错误

时间:2014-04-30 07:26:55

标签: javascript oop

请帮我理解。我想创建对象,属性“可见”和方法“hi”,但在第2行得到错误:

  

TypeError:无法设置未定义

的属性'visible'

在:

var NewFilter = {};
NewFilter.prototype.visible = false;
NewFilter.hi = function () { console.info("hi"); }

好的我知道我必须实际创建那个对象,但是为什么它最终会在创建对象时抛出错误?

1 个答案:

答案 0 :(得分:1)

空对象没有prototype属性,因此您无法在其上设置属性(不存在)prototype

只需将其设置在对象本身上,而不是:

var NewFilter = {};
NewFilter.visible = false;
NewFilter.hi = function () { console.info("hi"); }

如果您想详细了解JavaScript prototype,我建议您寻找 a few tutorials / sites