zoukankan      html  css  js  c++  java
  • JS函数笔记

    学习资料:http://www.runoob.com/js/js-function-definition.html

    JavaScript 函数定义


    JavaScript 使用关键字 function 定义函数。

    函数可以通过声明定义,也可以是一个表达式。

     

    Arguments 对象

    JavaScript 函数有个内置的对象 arguments 对象.

    argument 对象包含了函数调用的参数数组。

    通过这种方式你可以很方便的找到最后一个参数的值

    <!DOCTYPE html>
    <html>
    <body>
    <p id="demo"></p>
    <script>
    /*function myFunction()
    {
    var i,max=0;
    for (i=0;i<arguments.length;i++)
    {
    if (arguments[i]>max)
    {
    max=arguments[i];
    }
    }
    return max;
    }
    document.getElementById("demo").innerHTML=myFunction(4,5,6,33);*/
    function sumAll()
    {
    var i,sum=0;
    for (i=0;i<arguments.length;i++)
    {
    sum+=arguments[i];
    }
    return sum;
    }
    document.getElementById("demo").innerHTML=sumAll(1,2,3,4,5)
    </script>
    </body>
    </html>
    View Code

     闭包:

    <!DOCTYPE html>
    <html>
    <body>
    <button type="button" onclick="myFunction()">fuck me</button>
    <p id="demo"></p>
    <script>
    /*var counter=0;
    function add()
    {
     return counter+=1;
    }
    function myFunction()
    {document.getElementById("demo").innerHTML=add();
    }*/
    
    /*document.getElementById("demo").innerHTML=add();
    function add()
    {
    var counter=0;
    function plus()
    {
    counter+=1;
    }
    plus();
    return counter;
    }*/
    
    var add=(function ()
    {
    var counter=0;
    return function()
    {
    return counter+=1;
    }
    }
    )();
    
    function myFunction()
    {
    document.getElementById("demo").innerHTML=add();
    }
    </script
    <!--变量 add 指定了函数自我调用的返回字值。
    自我调用函数只执行一次。设置计数器为 0。并返回函数表达式。
    add变量可以作为一个函数使用。非常棒的部分是它可以访问函数上一层作用域的计数器。
    这个叫作 JavaScript 闭包。它使得函数拥有私有变量变成可能。
    计数器受匿名函数的作用域保护,只能通过 add 方法修改。-->
    </body>
    </html>
    View Code

    闭包是可访问上一层函数作用域里变量的函数,即便上一层函数已经关闭。

  • 相关阅读:
    IntelliJ IDEA 14.03 java 中文文本处理中的编码格式设置
    应聘感悟
    STL string分析
    CUDA SDK VolumeRender 分析 (1)
    BSP
    CUDA SDK VolumeRender 分析 (3)
    CUDA SDK VolumeRender 分析 (2)
    Windows软件发布时遇到的一些问题
    Ten Commandments of Egoless Programming (转载)
    复习下光照知识
  • 原文地址:https://www.cnblogs.com/whats/p/5025340.html
Copyright © 2011-2022 走看看