zoukankan      html  css  js  c++  java
  • javascript笔记整理(函数)

    javascript函数的声明和调用
    将完成某一特定功能的代码集合起来,可以重复使用的代码块。

    一、函数的声明方式(创建)

    A.基本语法(function  关键字)
    function 函数名([参数1],[参数2]....){
        函数体
        [retrun]  //返回值
    }

    function a(){
        alert(1)
    };
    

    B.字面量定义的形式(匿名函数)
    var 变量=function ([参数1],[参数2]....){
        函数体
        [retrun]  //返回值
    }

    var a=function(){
        alert(1);
    }
    

    C.以对象的形式来声明(不推荐使用)
    new 关键字。
    var 变量=new Function([参数1],[参数2]...,"函数体");

    var a=new Function(alert(1));
    

     二、函数的调用方式

    A.函数名() 、变量名();

    function a(){
        alert(1)
    };	
    a();
    
    var a=function(){
        alert(1);
    }	
    a();
    

    B.直接调用执行;

    (function  () {
        alert(1);
    })();		
    //结果	1
    

     三、两种声明方式的区别

    基本语法

    function a(){
        alert(1)
    };
    //会先预编译
    

     1.如果两个函数的命名相同,后面的将会覆盖前面的函数

    function a(){alert(1)};
    function a(){alert(2)};
    a();
    //结果	2
    
    function a(){alert(1)};
    var a=function(){alert(2)};
    a();
    //结果	2
    
    var a=function(){alert(2)};
    function a(){alert(1)};
    a();
    //结果	2
    

    2.以基本语法声明的函数,会在代码运行的时候,提前加载到内存当中,以供以后使用,但是以字面量形式命名的函数,会在执行到的时候,才进行赋值

    function a(){alert(1)};
    a();
    //结果	1
    
    a();
    function a(){alert(1)};
    //结果	1
    
    a();
    var a=function (){alert(1)};
    //结果	报错
    

     3.在不同的<script></script>块中的函数,使用和调用的时候,应该先定义,后执行。

    <script>
    a();
    </script>
    
    <script>
    var a=function (){alert(1)};
    </script>
    
    //结果 报错
    

    javascript函数的参数和return语句

    //金字塔

    function a(num){ for(var i=1;i<=num;i++){ for(var b=1;b<=num-i;b++){ document.write('='); } for(var b=1;b<=i*2-1;b++){ document.write('8'); } for(var b=1;b<=num-i;b++){ document.write('='); } document.write('<br>'); } }; a(9);

     效果:

    一、参数(可以动态的改变函数体内对应的变量的类型或值,使同一函数体得到不同的结果)

    形参:在定义函数的时候,函数括号中定义的变量叫做形参:function a(形参){}

    实参:调用函数的时候,在括号中传入的变量或值叫做实参:a(实参)

    1.参数的类型(可以是任何的数据类型)

    2.参数的个数(最多是25)

      a.实参和形参数量相等,一一对应。

      b.形参的数量多于实参,不会报错,但是多出的参数他的值,会自动赋值为undefined

    function a(a,b){
        alert(a);
        alert(b)
    };
    a(1);
    结果:1-------------undefined
    

       c.实参的数量多于形参。不会报错,但是要得到多出的实参的值,要用arguments对象

    function a(a){
        alert(a)
    };
    a(1,2);
    //结果:1
    

     二、arguments对象(每创建一个函数,该函数就会隐式创建一个arguments对象,他包含有实际传入参数的信息)

    1.length(检测实际传入参数的个数)

    function a(a){
        alert(arguments.length);
    };
    a(1,2);
    //结果    2
    

    2.callee(对本身的调用)

    function a(a){
        alert(arguments.callee);
    };
    a(1,2);
    //结果	function a(a){alert(arguments.callee)}
    

    3.访问传入参数的具体的值([下标])

    function a(a){
        alert(arguments[2]);
    };
    a(1,2,3);
    //结果	3
    

     三、函数重载(同一个函数因为参数的类型或数量不同,可以对应多个函数的实现,每种实现对应一个函数体)

    function a(){
        for(i=0;i<arguments.length;i++){
            alert(arguments[i]);
        } 
    };
    a(1,2,3);
    //结果依次弹出 1、2、3    
    
  • 相关阅读:
    Jmeterif controller 使用
    转载App测试工具大全
    Jmeter 官方在线文档&Android SDK 官方下载地址
    APP自动化之uiautomator2 +python3 UI自动化
    uiautomatorviewer不支持安卓 9.0或以上,提示:"error: obtaining UI hierachy"解决方法
    调查显示:软件开发公司出现“人才荒”
    浅谈Lean UX:我们到底该怎么设计?
    谷歌工程师再次公布Windows漏洞 并称微软很难合作
    灵活运用AppFlood:提高APP eCPM的10个技巧
    Spring Framework 4.0M1发布,支持JDK 8、Java EE 7
  • 原文地址:https://www.cnblogs.com/chenrf/p/4930835.html
Copyright © 2011-2022 走看看