在这个例子中应该包含的变量f是什么?

时间:2014-04-24 07:46:44

标签: javascript jquery jquery-plugins

我试着看看jQuery插件背后的逻辑是什么,我对以下问题感兴趣。

我有以下代码,我无法确定变量f

中变量t = function(u, a){}的值应该是多少?
(
    function($)
    {                            
        $.fn.pluginName = function(userOptions)
        {

            ...

            if((typeof userOptions).match("object|undefined"))
            {
                return this.each(
                    function(e)
                    {
                        new t(this, userOptions)
                    }
                );
            }

            var t = function (u, a)
            {
                var f = this;
            }

            ...

        }
    }
)(jQuery)

它应该包含函数t中的引用,或者应该在pluginName上引用

有人可以帮助我吗?我完全与此混淆。

2 个答案:

答案 0 :(得分:2)

函数t似乎是构造函数,这意味着函数内的this将引用使用new关键字调用该函数时创建的实例。

因此f将引用构造函数为t的对象的实例。

答案 1 :(得分:1)

当我想知道this是什么时,我只需使用console.log(this);进行打印 为了提高可读性,您可以添加toStrings(对象或其原​​型)。

另外我认为GregL在这个例子中是正确的。但这是一个奇怪的例子,你试图弄清楚这一点。构造函数的一些名称实际上保存了在变量中使用new创建的对象将有助于GregLs解释有意义