[JavaScript]ES5基础知识总结-函数
1.JavaScript没有专门的面向对象的语法,它是通过函数来实现面向对象特性的。
2.关键词:function,函数通常都会有返回值,如果某个函数没有显式的返回值,那么它默认的返回值是undefined。
3.参数,如果在调用某个有参数的函数忘记写参数时,参数值会默认undefined。如果传的参数多了,也不会报错,多余的部分会省略掉。(从最前面开始匹配)
实际上,我们还可以创建一些在参数数量方面更为灵活的函数。这得益于函数内部的arguments 变量,该变量为内建变量,每个函数中都能调用。它能返回函数所接收的所有参数。通过变量arguments,我们可以进一步完善sum()函数的功能,使之能对任意数量的参数执行求和运算。
PS:就相当于一个每个方法的默认参数列表会接收所有的参数值。但实际上这个arguments并不是一个数组,而是一个类似于数组的对象。
4.匿名函数
我们可以这样定义一个函数:
var f = function(a){
return a;
};
通过这种方式定义的函数常被称为匿名函数(即没有名字的函数),特别是当它不被赋值给变量单独使用的时候。在这种情况下,此类函数有两种优雅的用法:
(1)您可以将匿名函数作为参数传递给其他函数,这样,接收方函数就能利用我们所
传递的函数来完成某些事情。
(2) 您可以定义某个匿名函数来执行某些一次性任务。