- ECSAScript中,函数以关键字function定义,参数无需类型,返回值无需定义,可直接返回,若无返回值,则默认返回undefined.
- arguments 对象为函数参数的数组集合,arguments.length可获得函数参数的个数,可通过访问arguments对象值进行函数重载.
- Function 对象(类)支持定义变量的方法定义函数(等同function关键字定义),length属性获得参数个数,Function 对象也有与所有对象共享的 valueOf() 方法和 toString() 方法,返回对象的源代码
- 闭包(closure):函数可访问函数外的变量,即为闭包.
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script type="text/javascript">
//arguments访问参数
function add(){
var addResult = 0;
for(x in arguments){
addResult += arguments[x];
}
//闭包
function addInto(){
var addIntoResult = addResult;
}
return addResult;
}
//调用函数
document.write("add(1,2,3) = "+add(1,2,3)+"<br />");
//获得其参数个数
document.write("add.length = "+add.length+"<br />");
//获得源代码
document.write("add.toString() = "+add.toString()+"<br />");
</script>
</body>
</html>