在js中,值传递有两种,一种是值传递,一种是引用传递 string,number,boolean这三种是按值传递的 array,date等是按引用传递的<script type="text/javascript"> <!-- function f1(name){ return name;}; function f2(name){ return f1(name);}; function f3(name){ return f2(name);}; function f4(name){ if(typeof name == "string") name = "changed at f4"; else name.setYear(3000);}; var str = "this is a string."; var ar = new Date();document.write(f3(str),"<br>"); document.write(f3(ar),"<br>");f4(str); f4(ar);document.write(str,"<br>"); document.write(ar,"<br>");//--> </script>
string,number,boolean这三种是按值传递的
array,date等是按引用传递的<script type="text/javascript">
<!--
function f1(name){ return name;};
function f2(name){ return f1(name);};
function f3(name){ return f2(name);};
function f4(name){ if(typeof name == "string") name = "changed at f4"; else name.setYear(3000);};
var str = "this is a string.";
var ar = new Date();document.write(f3(str),"<br>");
document.write(f3(ar),"<br>");f4(str);
f4(ar);document.write(str,"<br>");
document.write(ar,"<br>");//-->
</script>