es6函数
一、函数概述
什么是函数?
函数是由这样的方式进行声明的:关键字 function、函数名、一组参数,以及置于括号中的待执行代码
如何调用函数?
函数可以通过其名字加上括号中的参数进行调用
函数如何返回值?
return
如果函数无明确的返回值,或调用了没有参数的 return 语句,那么它真正返回的值是 undefined。
二、arguments对象
在函数代码中,使用特殊对象 arguments,开发者无需明确指出参数名,就能访问它们。真是变态
检测参数个数,可以使用arguments.length
ECMAScript 不会验证传递给函数的参数个数是否等于函数定义的参数个数。开发者定义的函数都可以接受任意个数的参数(根据 Netscape 的文档,最多可接受 255 个),而不会引发任何错误。任何遗漏的参数都会以 undefined 传递给函数,多余的函数将忽略
模拟函数重载
用 arguments 对象判断传递给函数的参数个数,即可模拟函数重载。多余
三、Funciton对象
函数实际上是功能完整的对象。
Function 类可以表示开发者定义的任何函数。
函数名只是指向函数对象的引用值,行为就像其他对象一样。甚至可以使两个变量指向同一个函数
尽管可以使用 Function 构造函数创建函数,但最好不要使用它,因为用它定义函数比用传统方式要慢得多。
函数属于引用类型,所以它们也有属性和方法
length属性
eCMAScript 定义的属性 length 声明了函数期望的参数个数
对象也有与所有对象共享的 valueOf() 方法和 toString() 方法。这两个方法返回的都是函数的源代码
四、闭包
闭包,指的是词法表示包括不被计算的变量的函数,也就是说,函数可以使用函数之外定义的变量
就像使用任何高级函数一样,使用闭包要小心,因为它们可能会变得非常复杂
浙公网安备 33010602011771号