Ecmascript function arguments
初学js,今天看了几篇文章关于js参数的问题,记以记用。
对于js来说,方法的参数和其他语言的参数略不同,它无需关注要求实参和形参完全相同,方法的参数在方法对于方法本身而言,相当于一个参数数组,该参数数组表明了当前的实参,即便形参和实参的数量不匹配,也没有关系。这里有一点需要注意的是,参数数组和实参是单项传递的关系,他们只是值相同而空间内存不同,所以当参数数组值发生改变时,实参不变。
eg:
function say(name, message){
console.log(arguments.length);
}
say('World!');
//控制打印:1;
eg:
function say(name, message){
console.log(arguments[1] == message);
arguments[1] = 'World!';
console.log(arguments[1] == message);
}
say('World!', 'ByeBye!’);
//控制台打印:true;true;
function say(name, message){
console.log(arguments.length);
}
say('World!');
//控制打印:1;

浙公网安备 33010602011771号