zoukankan      html  css  js  c++  java
  • arguments的使用

      当我们不确定有多少参数传递的时候,可以使用 arguments 来获取,在 JavaScript 中, arguments 实际上它是当前函数的一个内置对象

    所有的函数都内置了一个 arguments 对象,arguments 对象中 存储了传递的所有实参

       例如:

        function numMax(){

          var max=arguments[0];  // arguments 中存储了numMax函数中的所有实参:23,45,96,87 

          for( var i=1; i<=arguments.length-1;i++){

            if(arguments[i] > max){

              max = arguments[i];

            }

          }

        }

        numMax(23,45,96,87);

    在调用函数时,浏览器每次都会传递进两个隐含的参数:

    1. 函数的上下文对象 this

    2. 封装实参的对象 arguments

      - arguments 是一个类数组对象,它也可以通过索引来操作数据,也可以获取长度

      - 在调用函数时,我们所传递的实参都会在 arguments 中保存

      - arguments . length 可以用来获取实参的长度

      - 即使不定义形参,也可以通过 arguments 来使用实参,只不过比较麻烦

        arguments[ 0 ] 表示第一个实参

        arguments[ 1 ] 表示第二个实参

      - arguments 里面有一个属性:callee,属性对应一个函数对象,就是当前正在执行的函数的对象

        可以使用 属性 arguments 和函数 fun 做比较,相同返回 true,否则返回 false

        console . log( arguments . callee == fun ); // true

      例:

        function fun(){

          console . log( arguments instanceof Array ); // 判断 arguments 是否是数组

          console . log( Array . isArray( arguments ) ); // 判断 arguments 是否是数组

          console . log( arguments . length ); // fun 函数实参的长度

        }

        fun( );

  • 相关阅读:
    python基础-递归
    python基础-三元表达式/列表推导式/生成器表达式
    python基础-生成器
    python基础-迭代器
    python基础-函数
    python基础-文件操作
    Docker(六)安装Red5进行rtmp推流
    Docker(五)安装Fastdfs
    Docker(四)安装Redis
    Docker(三)安装Mysql
  • 原文地址:https://www.cnblogs.com/qtbb/p/11275842.html
Copyright © 2011-2022 走看看