这意味着什么(函数($){}

What does this mean (function($) {}

本文关键字:函数 意味着 什么      更新时间:2023-09-26

如果我写这个代码:

(function($){})

这是否意味着在这个函数中,我可以写"$"而不是"function"这个词。

谢谢你的解释。

否。这意味着$可以在上下文中具有特定的含义。当像$这样的变量被两个或多个工具包使用时,这种事情经常被使用。例如,jQuery通常是这样写的,用于处理文档就绪方法:

jQuery(function($) {
    $('#div').something()...
});

这样,即使在其他地方调用jQuery.noConflict,也可以确保$在该上下文中的意思是jQuery

这种特殊的语法,(function($){})通常是这样做的:

(function($){
})(jQuery);

这样做是为了创建一个匿名函数并使用特定上下文调用它。它通常被用来做一些事情,比如将一个循环的特定迭代传递给AJAX操作(比如如果你想在一个运行五次的循环中进行5次AJAX调用)。示例:

for (var x = 0; x < 5; x++) {
    (function(index) {
        $.ajax(url, { data... }, success(data) {
            if (data.y == index)....
        });
    })(x);
}

它是一个匿名函数,以$为参数在本地范围内使用它。

它可以这样称呼:

(function($){ SOME_OPERATIONS_WITH_$ ;})(theObjectBeingPassedAsDollar)

例如。jQuery对象可以传递给这个实例,它将作为$在匿名函数中使用

这将提醒HelloWorld:

(function($){ alert($.one + $.two); })( {'one':'Hello','two':'World'} )

演示:http://jsfiddle.net/Pg9s4/