js中function函数参数 JavaScript中函数都是值传递吗?
JavaScript中函数都是值传递吗?JavaScript中,传递变量就是值传递,如果传递一个对象那就是引用传递,话不多说,上代码:值传递调用fun函数并传递变量a,在函数内部传递的参数a自加1后,
JavaScript中函数都是值传递吗?
JavaScript中,传递变量就是值传递,如果传递一个对象那就是引用传递,话不多说,上代码:
值传递
调用fun函数并传递变量a,在函数内部传递的参数a自加1后,全局变量a的值任然是5,说明参数传递过程中,只是将a的值传递过去了,属于值传递。
引用传递
对象obj的属性age原始值为20,调用函数,并传递obj,在函数内部改变_obj对象的age属性值为30,调用函数后,再输出obj对象的age属性,发现其值也跟着改变为了30,说明参数对象_obj与obj在内存中,指向了同一地址区域,属于引用传递。
js函数中如何传递数组参数?
由于function的参数是数组,那么传入参数也设置为数组,然后按照一般的传参方式传入即可。举个例子:
1、函数定义
function userfun(array){ var square = [] for(k in array) square[k] = array[k]*array[k] return square}
2、传参和调用
a = [1,2,3,4,5]b = userfun(a)alert(b)
3、结果显示