zoukankan      html  css  js  c++  java
  • (function($){...})(jQuery)和$(document).ready(function(){}) 的区别

    (function($){...})(jQuery)  实际上是执行()(para)匿名函数,只不过是传递了jQuery对象。   立即执行函数;相当于先申明一个函数,声明完后直接调用;

    用于存放开发插件的代码,执行其中代码时DOM不一定存在,所以直接自动执行DOM操作的代码请小心使用。

    相当于

      var fn=function($){…};

      fn(jQuery);//执行这个函数

      之所以只在形参使用$,是为了不与其他库冲突,所以实参用jQuery。

     作用:  

    这种写法的最大好处是形成闭包。在(function($) {…})(jQuery)在内部定义的函数和变量只能在此范围内有效。

    形成是否函数函数、私有变量的概念。外部的变量与函数影响不到我们自己的内容

     

    $(document).ready(function(){})  在DOM加载完成时运行的代码,不可用于存放开发插件的代码,因为jQuery对象没有得到传递,外部通过jQuery.method也调用不了其中的方法(函数)。 

      用于存放操作DOM对象的代码,执行其中代码时DOM对象已存在。不可用于存放开发插件的代码,因为jQuery对象没有得到传递,外部通过jQuery.method也调用不了其中的方法(函数)。

    最明显的区别就是执行的顺序不一样,(function($){...})(jQuery) 立即执行函数;$(document).ready(function(){})  在DOM加载完成时运行的代码

  • 相关阅读:
    Binary Tree Zigzag Level Order Traversal
    Add Binary
    Subsets II
    Subsets
    Minimum Depth of Binary Tree
    node Cannot enqueue Quit after invoking quit.
    微擎快速修改数量实例(异步)
    destoon 分页
    ajax里面使用this方法
    微擎系统 微信支付 get_brand_wcpay_request:fail
  • 原文地址:https://www.cnblogs.com/jiayeyuan/p/7767454.html
Copyright © 2011-2022 走看看