js中argument

argument
说明:
  在JavaScript中,arguments是对象的一个特殊属性。arguments对象就像数组,但是它却不是数组。
属性:

length, 获取arguments对象的长度(实参)。   
callee, 引用当前正在执行的函数。

1.可以借用arguments.length可以来查看实参和形参的个数是否一致:

function add(a, b) {
  var realLen = arguments.length;
  console.log("realLen:", arguments.length);
  var len = add.length;
  console.log("len:", add.length);
  if (realLen == len) {
  	console.log('实参和形参个数一致');
  } else {
  	console.log('实参和形参个数不一致');
  }
};
add(1,2,3,6,8);

2.可以借用arguments.callee来让匿名函数实现递归:

var sum = function(n) {
	if(n == 1) {
		return 1;
  } else {
  	return n + arguments.callee(n-1);
 }
}
console.log("sum =", sum(5));

猜你喜欢

转载自blog.csdn.net/weixin_41989325/article/details/89475866