js 函数实参列表arguments和形参的那点事儿

//如果实参和形参数量相等,那么形参和argments之间有种映射关系,形参变量值改变对应位置的arguments[i]也随之改变,反之亦然。

function test(a,b){
    b = 3;
    console.log(arguments[1]);   //3

    arguments[1] = 4;
    console.log(b);                    //4

}
test(1,2);

//如果实参比形参少,那么多余的形参和argments之间就没有了映射关系,即多余形参值得改变,对应位置的arguments[i]的值仍为undefined,反之亦然。

function test(a,b){
    //b = 3;
   // console.log(arguments[1]);   //undefined  

    arguments[1] = 4;
    console.log(b);                  //undefined
}
test(1);
时间: 2024-10-08 17:51:16

js 函数实参列表arguments和形参的那点事儿的相关文章

js函数的两种定义形式,函数的实参列表arguments/形参列表函数名

1.声明式函数:function test(){}; 2.表达式函数:var test=function(){} 例:function test(a,b){} test(2,3,4) ->函数的形参和实参是可变的 函数内参数参数列表: 1.实参列表:在函数内用arguments表示,如上例:arguments=[2,3,4] 2.在函数内test.length表示形参列表长度 原文地址:https://www.cnblogs.com/fangming/p/8847650.html

JavaScript服务器端开发(函数实参对象arguments使用的几个注意事项)

为什么引入实参对象arguments 在JS开发中,每一个函数都对应一个实参对象,称为arguments.这个对象引用的目的是为了解决如下问题: 当调用函数的时候传入的实参个数超过函数定义时的形参个数时,没有办法直接获得未命名值的引用. 因为JS函数定义与调用极其灵活,参数个数是不确定的,而且系统也不会作自动检测.这为开发带来灵活性的同时也带来相当的麻烦.下文将结合实际开发中使用到arguments时经常遇到的几个"麻烦"进行讨论,并给出对应的解决方案. 在函数体内,标识符argume

JS 函数中的arguments,call,apply

JS 函数定义的时候的参数和调用时的关系调用时实际传递的参数可以比定义的参数多或者少,见下面的两个例子 <script> function test(a,b,c){ console.log(a); } test('a'); test('a','b','c'); </script> <script> function test(a){ console.log(a); } test('a'); test('a','b','c'); </script> JS的方法

js函数形参与arguments的关系

function course(name,age){ console.log(age); //undefined 此时age并无实参,所以为undefined console.log(arguments[1]); //undefined arguments指示的age,因为下标是以0开始的 arguments[1] = 2; console.log(age); //underfined console.log(arguments[1]); //2 } course('麋斯'); 分析 : 形参的

JS函数与BOM

[函数的声明及调用]1.函数声明的格式:function 函数名(参数1,参数2,....){//函数体return结果;}函数名(参数1的值,参数2的值,....) >>>函数的调用格式直接调用:函数名(参数1的值,参数2的值,....)事件调用:事件名="函数名()"; 2.函数声明的几点强调: ①函数名的声明,必须符合小驼峰法则(首字母小写,之后每个单词字母大写) ②参数列表,可以有参数,也可以无参数.分别称为有参函数和无参函数. ③声明函数时的参数列表,称为&

JS函数入门

一. 函数的声明及调用 * 1函数的格式:function 函数名(参数1,参数2......){ * //函数体 * return 结果: * * } * 函数调用的格式: * 直接调用:函数名(参数1的值,参数2的值......): * 事件调用:事件名="函数名()"; * 2,函数声明的几点强调: * ①函数名的声明,必须符合小驼峰法则(首字母小写,之后每个单词首字母大写): * ②参数列表,可以有参数也可以没有参数,分别称为有参函数,无参函数: * ③声明函数时的参数列表,称

JS函数 -- 功能,语法,返回值,匿名函数,自调用匿名函数,全局变量与局部变量,arguments的使用

“JavaScript设计得最出色的就是它的函数的实现.” -- <JavaScript语言精粹> 函数包含一组语句,它们是JS的基础模块单元,用于指定对象的行为.一般来说,所谓编程,就是将一组需求分解成一组函数与数据结构的技能. 1.函数的功能 代码重复性使用 模块化编程 2.语法: 使用函数前要先定义才能使用 函数定义有三个部分:函数名,参数列表,函数体 格式: 1 function 函数名([参数1, 参数2, ...]){ 2 3 函数执行部分; 4 5 return 表达式; 6 7

JS函数的参数对象arguments在严格模式下的限制

在JS中,传入的函数的参数个数可以与定义函数的个数不一致,那么对于传入的实参的引用,则是arguments对象.然而改对象在严格模式和非严格模式下是由区分的: 1 在严格模式下arguments作为了一个保留字,那么如果在定义arguments相关的变量和函数,则会报语法错误. 2 arguments在严格模式下属于传入的实参对象,并且是不可变的,即不可在函数内部通过arguments来修改实参值. 如: function test1(a){ “use strict”; arguments[0]

js函数的内部属性---arguments,callee,caller

在接下来的几篇文章中,我大家谈谈函数的内部属性,arguments,callee,caller (1)arguments,是一个类数组对象,其中包含了传入函数的所有参数,主要用途是,保存函数的参数: 代码1: function aa(b){alert(arguments);} aa(4); function aa(a,b,c,d){alert(arguments.length);} aa(1,2,3,4); function aa(a,b,c,d){alert(arguments[2]);} a