形参和实参是存在一种引用关系的,就好比变量中的引用关系。我们都知道,变量中的引用关系跟它们的值有关。
当值为原始类型时(string,number,boolean,int
等等),var a=b
是各自引用不同的内存地址的,修改不会影响到彼此;
当值是对象,数组等非原始类型时,它们引用的是同一个内存地址,修改则会相互影响。
所以当 函数中的形参是 原始类型,就不会影响到实参的值,因为引用的是值
当函数中的形参是 对象类型,引用的是地址,会影响实参。
形参和实参是存在一种引用关系的,就好比变量中的引用关系。我们都知道,变量中的引用关系跟它们的值有关。
当值为原始类型时(string,number,boolean,int
等等),var a=b
是各自引用不同的内存地址的,修改不会影响到彼此;
当值是对象,数组等非原始类型时,它们引用的是同一个内存地址,修改则会相互影响。
所以当 函数中的形参是 原始类型,就不会影响到实参的值,因为引用的是值
当函数中的形参是 对象类型,引用的是地址,会影响实参。