众所周知,js是一门相当灵活的语言。当我们在js中在调用一个函数的时候,我们经常会给这个函数传递一些参数,js把传入到这个函数的全部参数存储在一个叫做arguments的东西里面
function showargs() {
console.log(arguments);
}
showargs(1, 2, 3, 4, 5);
我们可以看到arguments对象的 __ proto __ 是指向object的,这也说明了他是个类数组对象,而不是一个数组。
arguments还有一个callee属性,这个属性是表示的是当前函数的一个引用,简单点说,这个属性里面存储的我们调用的这个函数的代码
function showcallee() {
var a = '这里是代码';
var b = '这是另一段代码';
var c = a + b;
console.log(arguments.callee);
return c;
}
showcallee();