为什么不能调用函数原型中定义的函数?

Fre*_*ind 0 javascript prototype-programming

我有一些javascript代码:

wzq.CategoryTree = function(config) {
};
wzq.CategoryTree.prototype.hello = function() {
    alert("Hello");
};

var categoryTree = new wzq.CategoryTree({});
categoryTree.hello();
Run Code Online (Sandbox Code Playgroud)

我认为它应该提醒"Hello"消息框,但没有任何反应.哪里错了?


UPDATE

对不起,伙计们,我错过了工作代码中的重要内容,CategoryTree应该是:

wzq.CategoryTree = function(config) {
     return new Ext.tree.TreePanel();
};
Run Code Online (Sandbox Code Playgroud)

所以:

var categoryTree = new wzq.CategoryTree({});
Run Code Online (Sandbox Code Playgroud)

它实际上Ext.tree.TreePanel不是一个CategoryTree,这就是为什么没有hello找到的原因.

Håv*_*ard 5

wzq定义?运行代码会产生一个Uncaught ReferenceError: wzq is not defined.

这有效:(jsfiddle)

wzq = {};

wzq.CategoryTree = function(config) {
};
wzq.CategoryTree.prototype.hello = function() {
    alert("Hello");
};

var categoryTree = new wzq.CategoryTree({});
categoryTree.hello();
Run Code Online (Sandbox Code Playgroud)