简明通俗地理解JavaScript原型链与继承

理解JavaScript函数与原型

在这里最重要的是理解一点,JavaScript里面一切都是一个值,换句话说,object是一个值,function也是一个值。这些值与基本类型的区别就在于,他们只是一个变量标签,存储的是一个指向其内容的指针。

函数相对来说就稍微复杂一点,因为默认情况下函数没有确定的运行环境,需要调用者提供运行环境(this)。但实际上函数本身就是一个变量,也是一个值,一个变量标签,这就是函数对象。通过函数对象可以构造函数对象的实例,本质上是通过一定规则对函数对象的一个拷贝(可以先不理解这句话)。

先不管函数对象,使用函数分两种情况,作为普通函数而言,它只是一系列过程的封装,我们使用的也只是这一系列的过程,也因此没有体现出函数的面向对象特性,此时函数的运行环境是调用者,在全局环境下是全局对象。作为构造函数而言,即new function(),其中function()里面一般没有返回值。它除了封装了一系列方法,还将自身实例化为一个对象实例,自己为自己提供了运行环境。我们看下面这个例子

html>

猜你喜欢

转载自blog.csdn.net/qq_45467083/article/details/105772449
今日推荐