写js的时候,函数是不可避免的,几乎90%的js都是由函数组成的,函数之间考什么连接,参数!
好了,用代码的运行结果说明问题。
1 function fn1(str,strs){ 2 var str="hello";//该变量只在fn1内有效,跳出fn1,该变量的值不会被改变,有点类似于java 3 strs[0]="hello"; 4 strs[1]="world"; 5 } 6 function fn2(){ 7 var str="hello1"; 8 var strs=new Array("hello1","world1"); 9 document.writeln(str+"<br/>"); 10 document.writeln(strs+"<br/>"); 11 fn1(str,strs); 12 document.writeln(str+"<br/>"); 13 document.writeln(strs+"<br/>"); 14 } 15 运行fn2()结果: 16 hello1 17 hello1world1 18 hello1 19 helloworld
可以看出:若是传递基本类型,字符串是值传递,若是传递数组,则是引用传递。