码迷,mamicode.com
首页 > Web开发 > 详细

js-arguments

时间:2018-11-22 13:16:35      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:其他   除了   call   lse   开始   nts   调用   形参   else   

js-arguments

arguments

  1. arguments是函数执行时的一个对象,用开存储传进函数的参数,下标从0开始存储。arguments是对象,不是Array,但它有点类似Array,它不具备除了length之外的其他方法。
  2. callee:arguments对象的一个属性。
    1)它用来指向当前指向的函数。
function fun() {
    console.log(arguments.callee);
}
fun();//打印的是fun函数本身。

2)用来检测传进的参数和喊出形参是否相等

function fun(fun1,fun2){
    if(arguments.length===arguments.callee.length){
        console.log("参数正确");
    } else{
        console.log("参数不正确");
    }
}
fun(1,1);

3)调用匿名函数

var num = (function(n){
      if(n == 1){
        return 1;
      }
      return n*arguments.callee(n-1);//调用匿名立即执行函数的引用
    }(10));

3.func.caller:function对象的一个属性,它返回函数的引用,返回调用这个函数的对象。

function fun1(){
console.log(arguments.callee.caller);
}
function fun2(){
    fun1();
}
fun1();
fun2();
//若直接在全局环境下调用fun1 则返回null,在fun2里调用之后返回fun2

js-arguments

标签:其他   除了   call   lse   开始   nts   调用   形参   else   

原文地址:https://www.cnblogs.com/chenyingjie1207/p/10000271.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!