19 函数的类化
函数的动态创建
具名的、静态的函数声明有两个特性:
- 是它在所有代码运行之前被创建;
- 它作为语句的执行结果将是“空(Empty)”。
几种动态函数的构造器
Function()是一切函数缺省的构造器(或类)。尽管内建函数并不创建自它,但所有的内建函数也通过简单的映射将它们的原型指向 Function。除非经过特殊的处理,所有 JavaScript 中的函数原型均最终指向 Function(),它是所有函数的祖先类。
JavaScript 中一共只有四种可以动态创建的函数:
- 一般函数(Function)
- 生成器函数(GeneratorFunction)
- 异步生成器函数(AsyncGeneratorFunction)
- 异步函数(AsyncFunction)
函数的三个组件
函数的三个组件,包括:参数、执行体和结果。
动态函数的创建过程
调用内部过程CreateDynamicFunction()来创建函数对象。但相对于静态声明的函数,动态创建(CreateDynamicFunction)却有自己不同的特点与实现过程。