zoukankan      html  css  js  c++  java
  • js中的潜伏者之Arguments对象

    argument

    说明:

      在JavaScript中,arguments是对象的一个特殊属性。arguments对象就像数组,但是它却不是数组。可以理解为他是潜伏者,通俗的说,就是你传的参数不一定按照参数列表的方式来,多的就进arguments里。

    属性:

      length, 获取arguments对象的长度。

     

      callee, 引用当前正在执行的函数。

     

    编辑本段举例:

    1.参数的长度

      window.onload = function(){

     

      abc(1,2,3);

     

      }

     

      function abc(){

     

      //虽然这里没有引用参数,但是arguments仍能捕获到

     

      alert(arguments.length);

     

      }//output 3

    2.隐藏的参数

      function abc(x,y){

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

     

      alert(arguments[i]);

     

      }

     

      }//output: 1,2,3  

    3.改变参数值

      function abc(x,y,z){

     

      arguments[2] = "hello";

     

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

     

      alert(" "+arguments[i]);

     

      }

     

      }//output: 1 2 hello

    4.递归

      求1到n的自然数之和

     

      function add(x){

     

      if(x == 1) return 1;

     

      else return n + arguments.callee(n-1);

     

      }

     

      其实callee对于没有命名的函数调用自身时就是一个福音了,比如对于没有命名的函数求1到n自然数之和

     

      var result = function(x){

     

      if(x == 1) return 1;

     

      return x+arguments.callee(x-1);

     

      }

  • 相关阅读:
    记MongoDB的安装
    Python格式化输出指定宽度及占位符
    LMDB数据库加速Pytorch文件读取速度
    IDEA设置输入后自动提示
    IDEA2020 最新激活
    java 编译执行cmd命令
    算法9:What is the sum of the digits of the number 21000
    JAVA8 LocalDateTime
    算法8:已知 a^2+b^2=c^2(a,b,c 为自然数,a<b<c),且a+b+c=1000,求abc的值?
    ROS学习笔记
  • 原文地址:https://www.cnblogs.com/Arther-J/p/5371728.html
Copyright © 2011-2022 走看看