Javascript jQuery函数不返回

Javascript jQuery函数不返回,javascript,jquery,Javascript,Jquery,(函数($){ 当我尝试调用$.a.b.init('t');它不起作用,我的意思是它没有按预期返回。有什么建议吗 问题不在于$a.b.init('t')不工作。问题在于它返回整个函数的代码,而不是返回字符串。 谢谢您的时间。试试看 $.a = []; $.a.b = { ... } 或者更好: $.a = {b: { title: "", init: ... }}; 使用$时,a.ba未定义,因此无法添加到其中。由于$。a尚未定义,您无法设置

(函数($){

当我尝试调用$.a.b.init('t');它不起作用,我的意思是它没有按预期返回。有什么建议吗

问题不在于$a.b.init('t')不工作。问题在于它返回整个函数的代码,而不是返回字符串。

谢谢您的时间。

试试看

$.a = [];
$.a.b  = { ... }
或者更好:

$.a = {b: {
     title: "",
     init: ...
}};

使用
$时,a.b
a未定义,因此无法添加到其中。

由于
$。a
尚未定义,您无法设置
属性。首先,您需要创建
$.a
。或者,使用名称空间助手:

$.namespace = function(ns) {
    var cur = $, split = ns.split('.');
    while (split[0]) {
        cur = cur[split.shift()] = {};
    }
    return cur;
};

$.namespace('a').b = { ... };
它还可以用于更深层的名称空间:

$.namespace('a.b.c.d.e.f').g = 123;
$.a.b.c.d.e.f.g; // => 123

@Ramblingwood-非常宝贵的工具。但即使是Firefox上的错误控制台也能提供帮助:Ctrl+Shift+J。有趣而奇怪。我想如果你经常使用它,你可以为所有对象添加它,而不仅仅是jQuery。发布的代码工作得很好,除了
$.a.b
之外:。通常,如果你不启动它,你会得到函数的源代码,例如。
alert($.a.b.init);
而不是
alert($.a.b.init('parameter'));
,因此没有更多的代码,我想不出更多。
$.namespace('a.b.c.d.e.f').g = 123;
$.a.b.c.d.e.f.g; // => 123