且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

JavaScript一些小知识点的记录2之函数

更新时间:2022-04-20 08:45:18

1.函数尽量短小,使其用于某个特殊的任务,尽量保持通用的原则。
2.函数名称通常以动词开头,然后再跟上一个或多个名词,名词的首字母小写且隔后的单词首字母大写。
3.函数的参数不用定义其类型。
4.javascript数组的成员计数是从0开始的。
5.参数的传递有两个方面:
一方面是参数中的变量传递是原始值,如字符串,布尔值,数字等。那么在函数中修改实际参数值,将不会影响程序的调用。
另一方面是参数的传递是传给函数的对象的则是一个引用那么在函数中对这个对象的修改会反映到调用程序中,例如下面的例子。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>function</title>
<script type="text/javascript">
/*function sayHello(){
alert("hello ,my name is kehaojian")
}
sayHello();*/
function alterArgs(ke,hao){
ke="haojian";
hao[1]="1";
hao[hao.length]="three"; 
}
function test(){
var str="i am kehaojian";
var ary=new Array("one","two");
document.writeln("strig literal is"+str+"<br/>");
document.writeln("array is"+ary+" <br/>");
document.writeln(ary.length);
alterArgs(str,ary); 
document.writeln("strig literal is"+str+"<br/>");
document.writeln("array is"+ary+" <br/>");
}
test();
</script>
</head>

<body>
</body>
</html>

结果就是
string literal isi am kehaojian 
array is one,two 

strig literal is i am kehaojian 
array is one,1,2 

可以看到,变量值的传递是不会影响调用函数的,而对象则会。
6.局部变量不会影响全局变量的值。全局变量不用var来声明,用var声明的是局部变量,在实际中一般使用局部变量。
<script type="text/javascript">
x="kehaojian";
function build(){
var x="hao";
document.writeln(x);
}
build();
document.writeln(x);

</script>
结果是hao kehaohao



本文转自gauyanm 51CTO博客,原文链接:http://blog.51cto.com/gauyanm/560833,如需转载请自行联系原作者