Appearance
理解参数
本节目标:理解“理解参数”的核心思路,并能把它用于实际开发或面试表达。
**特点**任意个参数;参数可任意类型;形参只提供便利,但不是必需的;形参数量可以和实参数量可不一致;没有传递值的形参将自动被赋予值为undefined的实参。好比定义了变量但又没有初始化一样。
按值传递:ECMAScript中的所有参教传递都是按值传递,不可能按引用传递。
**原理**参数在内部是用一个数组来表示的。函数接收到的始终都是这个数组,而不关心数组中包含那些参数(如果有参数的话)。
这个数组中包不包含元素都无所谓。**arguments**访问参数数组:通过arguments对象来访问参数数组。arguments是类数组对象,获取参数个数:通过访问arguments对象的length属性返回函数的参数个数。
**严格模式对****arguments****的****限制**赋值无效:对arguments赋值无效。修改值报错:重写arguments的值会导致语法错误(代码将不会执行)。