-4

我对下面代码中的语法“(function($)”和“(jQuery)”的含义有点麻烦。

(function( $ ){
$.fn.myPlugin = function() {
    // Do your awesome plugin stuff here
};})(jQuery);

你能解释一下它们的含义吗?

如果我想将上面代码中的短语“(jQuery)”更改为“(abc)”,那么该怎么做以及如何使用它?

感谢您花时间回答我的问题。

4

2 回答 2

1

它是一个立即调用的函数表达式。它允许您 1) 以这样一种方式封装代码,使任何变量都限制在其范围内,而不是污染窗口环境,以及 2) 传递您可以在代码中使用的参数。

在这种情况下Jquery$您可以使用$安全的知识,您可以使用$它,而不会与可能将其用作别名的任何其他库冲突。

您当然可以传入abcjQuery假设abc存在。

(function($, abc) {
  $.fn.myPlugin = function() {
   console.log(abc);
  }
}(jQuery, abc));
于 2013-10-02T15:41:48.993 回答
1

function($)表示该函数采用单个参数 variable $,它(与任何参数一样)可在函数内部访问。

$.fn.myPlugin正在使用该参数。

(function...)(jQuery)正在制作一个自动调用的功能块,作为jQuery参数传递。

这样做的目的是确保$人们通常用来表示 jQuery 的别名实际上是传递一个 jQuery 对象,而不是任何其他名为$.

没有充分的理由更改jQueryabc,除非您在变量中有jQuery实例化abc

于 2013-10-02T15:38:33.493 回答