zoukankan      html  css  js  c++  java
  • js函数自执行

    在javascript里,任何function在执行的时候都会创建一个执行上下文,因为function声明的变量和function有可能只在该function内部,这个上下文,在调用function的时候,提供了一种简单的方式来创建自由变量或私有子function。

    函数自执行写法:

    1.最前最后加括号

    (function(){alert();}());//有点是提醒阅读代码的人,这段代码是一个整体。

    2.function外面加括号

    (function(){alert();})();

    3.function前面加运算符,常见的是!和void

    !function(){alert();}();

    void function(){alert();}();

    使用案例:

    var counter=(function(){

    var i=0;

    returen{

    get:function(){

    return i;

    },

    set:function(){

    i=val;

    },

    increment:function(){

    return ++i;

    }

    };

    }());//创建一个立即调用的匿名函数表达式,returen一个变量,其中包含要暴露的东西,返回的这个变量将赋值给counter,而不是外面声明的function函数。

    counter.get();//0

    counter.set(3);

    counter.increment();//4

    counter.increment();//5

    counter.i;//undefined 因为i不是返回对象的属性

    i;//引用错误,i没有定义(因为i只存在于闭包)

    (function(){

    //code,运行的代码

    })();//在js中()有两种含义,一个是运算符,一个是分隔符。这里的第一个是分隔符,表示里面的函数是一个部分。后面的是运算符,表示里面的函数要运行,相当于定义完一个匿名函数后就让它直接运行。

  • 相关阅读:
    Table to List<object> C#
    Edge Beta 进入无痕模式 快捷方式
    C# 按行读取文件 从某行开始取
    Navicat连接oracle,出现Only compatible with oci version 8.1
    未能找到 System.Web.Helpers
    js json 排序
    使用 NPM 安装Vue并创建项目
    css3动效
    回忆向——诺宝RC机器人仿真
    javascript问题
  • 原文地址:https://www.cnblogs.com/lionisnotkitty/p/5992099.html
Copyright © 2011-2022 走看看