Immediately-invoked Function Expression(IIFE,立即调用函数),简单的理解就是定义完成函数之后立即执行.因此有时候也会被称为“自执行的匿名函数”(self-executing anonymous function). IIFE的叫法最早见于Ben Alman的文章.文章中Ben Alman 已经解释得很清楚了,希望定义自执行函数式常见的语法错误有两种: 1) function (){ }() 期望是立即调用一个匿名函数表达式,结果是进行了函数声明,函数声…
在javaScript中,每一个函数被调用时,都会创建一个新的运行上下文.由于在一个函数里面定义的变量和函数仅仅能在里面訪问.在外面是不行的.上下文提供了一种非常easy的方法来创建私有性. //makeCounter函数返回另外一个匿名函数,这个匿名函数可以訪问到"私有"变量i, 好像有一点"特权"性. function makeCounter() { // i仅仅能在makeCounter的里面被訪问到 var i = 0; return function()…
实验主题: setInterval() 方法是 JS 中比较常用的一个方法.setInterval() 方法可以按照指定的周期 ( 毫秒 ) 来调用函数方法或计算表达式. setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口关闭.由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数. 注:1000 毫秒 = 1秒 setInterval() 语法: setInterval(code, millisec,…
使用new关键字调用函数 test.js 代码如下 function Person(name, age, obj) { var o = new Object(); o.name = name; o.age=age; o.obj=obj; o.sayName=function(){ alert(this.name); } // return o; // this.sayName=function(){ alert(name); } console.log(this); } var friend=n…
首先介绍这两个函数 一.setInterval() 按照指定的周期来调用函数或表达式,执行多次.(时间单位:ms) timer = setInterval("content =document.getElementById("input_content").value;", 800) // 0.8s执行一次js语句 timer = setInterval(showHint, 800) // 每0.8s执行一次showHint函数 clearTimeout(timer…
以下文章出自  http://blog.rongzhiwang.com/king/archive/2012/08/13/javascriptjseval.aspx       今天碰到人问这样一个问题:用jQuery做一个菜单,每次使用时传进去一个参数,这个参数是一个函数名,在菜单中怎么执行这个函数.   大概就这么个意思吧,当时听到就很熟悉的感觉,有的说为什么不用switch case,但是说实话有时候用判断确实不爽,好像自己之前也这样做过,但是真想不起来怎么实现的了.然后搜了一下,找到eva…
setTimeout方法:setTimeout setInterval方法:setInterval…
首先这是js的一种函数调用写法,叫立即执行函数表达式(IIFE,即immediately-invoked function expression).顾名思义IIFE可以让你的函数立即得到执行(废话). 一般来说,IIFE有以下几种用途: 1. 创建只使用一次的函数,并立即执行它. 2. 创建闭包,保存状态,隔离作用域. 3. 作为独立模块存在(例子如jQuery),防止命名冲突,命名空间注入(模块解耦). 1. 创建只使用一次的函数,并立即执行它 创建只使用一次的函数比较好理解,在需要调用函数的…
开头:各种原因总结一下javascript中的自动执行函数(立即调用函数)的一些方法,正文如下 在Javascript中,任何function在执行的时候都会创建一个执行上下文,因为function声明变量和function有可能只在该function内部,这个上下文,在调用function的时候,提供一些简单的方式来创建自由变量或私有子function. eg: // 由于该function里返回了另外一个function,其中这个function可以访问自由变量i // 所有说,这个内部的f…
<!DOCTYPE html> <html> <head lang="en"> <meta charset="utf-8"/> <title></title> <script src="../js/jquery-1.10.2.js"></script> <script> // 1 i为全局变量 输出全局变量 function myName(…