`

Javascript 函数调用,及闭包

阅读更多
    Javascript 的函数调用 
     
    function close(){ 
        var myline=100; 
        return(function(){ 
            return(myline++); 
        }); 
    }     
    console.log(close());    //console output://   funciton() 
    console.log(close()());  //console output://   100 
    console.log(close()());  //console output://   100 
     
    function close2(){ 
        var myline=150; 
        return(function(){ 
            return(myline++); 
        }()); 
    }  
    console.log(close2()); //console output://   150 
    console.log(close2()); //console output://   150 
     
    function closure(){ 
        var myline=200; 
        return(myline++); 
         
    } 
    console.log(closure()); //console output://   200 
    console.log(closure()); //console output://   200 
     
    //closure example 
    var copyclose=(function(){ 
        var myline=300; 
        return(function(){ 
           return myline++;  
        }); 
    }()); 
    console.log(copyclose());   //console output://   300 
    console.log(copyclose());   //console output://   301 
    console.log(copyclose);     //console output://   function()

比较奇怪,没明白为什么,特别是第一个函数 和 最后一个函数写法的区别
感谢百度知道网友给出解答:
http://zhidao.baidu.com/question/918961299202303779.html?quesup2&oldq=1

分享到:
评论

相关推荐

    JavaScript 匿名函数和闭包介绍

    在讨论JavaScript编程语言时,匿名函数和闭包是两个重要的概念,它们在函数式编程和模块化代码设计中扮演着核心角色。匿名函数是没有具体名称的函数,它们可以是独立的,也可以是表达式的一部分,通常用于定义临时...

    JavaScript函数式编程.pdf

    在JavaScript函数式编程中,闭包是一个非常重要的概念。闭包是指有权访问另一个函数作用域中变量的函数。由于JavaScript的作用域链,闭包能够访问到函数定义时的外部变量,即使外部函数已经执行结束。闭包通常用于...

    javascript函数式编程

    JavaScript函数式编程是一种编程范式,它强调将计算视为数据处理的过程,并且重视函数作为第一类公民,即函数可以作为变量赋值、作为参数传递、作为返回值返回。这种编程风格在JavaScript中尤其常见,因为它提供了...

    JS 四种函数调用模式

    了解并熟练掌握这些函数调用模式对于编写高效、可维护的 JavaScript 代码至关重要。它们在处理对象间的交互、继承和上下文绑定时尤其有用。在实际开发中,你需要根据场景选择合适的调用方式,以便更好地控制代码的...

    JavaScript基础篇(6)之函数表达式闭包

    闭包是JavaScript中的一个核心概念,它是指有权访问另一个函数作用域中变量的函数。闭包的产生是因为内部函数持有了外部函数的变量,即使外部函数已经执行完毕,内部函数仍然可以访问这些变量。 #### 三、闭包的...

    浅谈Javascript嵌套函数及闭包

    JavaScript采用静态作用域,也就是说函数的作用域在函数定义时就已经确定,而不是在函数调用时确定。 闭包(Closure)是基于词法作用域形成的特性,它允许一个函数访问并操作函数外部的变量。通常,函数在执行完毕...

    JS匿名函数、闭包

    **闭包**是JavaScript中一种非常强大的机制,它允许函数访问并操作其定义时所在的范围内的变量,即使在函数被调用时这个范围已经不存在了。 ##### 原理: - **作用域链**:当一个函数被创建时,它会捕获一个**作用...

    JavaScript中函数对象调用模式总结

    这篇博客通过深入分析JavaScript中的函数调用模式,帮助开发者更好地理解和掌握这些概念。 首先,JavaScript是一种动态类型语言,其中函数不仅是一种数据类型,还能够作为值进行传递和存储。这种特性被称为“函数是...

    javascript 函数教程(由浅入深)

    以下是关于JavaScript函数的详细讲解: 1. **函数定义**: - 无参函数定义:`function 函数名 () { 代码... }` - 有参函数定义:`function 函数名 (参数列表) { 代码... }` - 参数列表中的参数可以是变量、常量...

    JavaScript函数式编程pdf

    9. Recursion:递归是函数式编程中的另一个重要概念,它是一个函数调用自身的过程。在JavaScript中,递归可用于解决诸如遍历数据结构、计算阶乘等问题。 10. Monads:虽然JavaScript社区对Monad的理解和应用程度各...

    理解javascript函数式编程中的闭包(closure)_.docx

    本篇文章主要探讨JavaScript函数式编程中的一个重要概念——闭包(closure)。闭包是一种特殊的函数,它能记住其定义时的作用域,即使在函数执行完毕后,仍然可以访问到该作用域内的变量。在JavaScript中,每个函数...

    javascript_函数大全

    ### JavaScript函数大全解析 在深入探讨JavaScript函数的广泛应用与特性之前,让我们首先明确一点:JavaScript函数不仅是编程语言中的核心组件,更是实现复杂逻辑、封装功能模块的关键所在。不同于许多传统面向对象...

    javascript深入理解js闭包.docx

    - 保持状态:闭包可以用来保持函数的状态,例如在多次调用中保持某个计数器的值。 - 数据封装与隐私:闭包可以用来实现私有变量,外部无法直接修改这些变量,有助于防止意外篡改和提高代码的安全性。 - 模块化:...

    浅析javascript语言中的函数闭包现象.pdf

    JavaScript中的函数闭包是一个重要的概念,它涉及到函数的作用域、变量持久化以及内存管理等多个方面。闭包的本质是在函数内部创建另一个函数,使得内部函数能够访问并操作外部函数的局部变量,即使外部函数已经执行...

    javascript函数速查

    JavaScript函数是编程语言的核心组成部分,它是一段可重复使用的代码块,可以接受参数并返回值。在JavaScript中,函数不仅可以作为表达式,还能作为变量赋值、作为参数传递以及作为返回值。本速查指南将深入探讨...

    跟我学习javascript的闭包

    JavaScript 闭包究竟是什么? 用JavaScript一年多了,闭包总是让人二丈和尚摸不着头脑。陆陆续续接触了一些闭包的知识,也犯过几次因为不理解闭包导致的错误,一年多了资料也看了一些,但还是不是非常明白,最近偶然...

    (转载)JavaScript中匿名函数,函数直接量和闭包.docx

    在JavaScript中,括号`()`用于函数调用,也可以用来创建一个表达式。在匿名函数前加`()`,如`(function() {})()`,是为了立即执行这个函数,因为JavaScript会优先处理表达式。这在创建闭包时特别有用,因为它确保...

Global site tag (gtag.js) - Google Analytics