(1)理解参数:ECMAScript中没有函数签名的概念,其函数参数是一个包含零或多个值的数组的形式传递的,可以通过arguments对象来访问这些参数。而且由于不存在函数签名的特性,ECMAScript函数不能重载,只会覆盖。
(2)ECMAScript中所有函数的参数都是按值传递的。
从上面的例子可以看出,在把person传递给setName()后,name属性被设置为"a",然后又将一个新对象赋给变量obj,同时将其name属性设置为"b"。如果person是按引用传递的,那么person就会自动修改为指向name为"b"的新对象。但是console.log(person.name),结果为"a"。说明参数是按值传递的。