JavaScript实例和对象的区别?

JavaScript014

JavaScript实例和对象的区别?,第1张

关于js中实例和对象的解释如下:

比如定义persion如下:

var person = new Object()

var person = {}

JS 是基于原型的面向对象语言, 所有数据都可以当作对象处理,所以 person 是对象, 可以把它当作是 Object 的实例. 当然, 一切都是对象。

第二个采用对象字面量的方式生成的person也是如此。

然而它内部没有调用new Object(),而是采用JSON的初始化方式:

将现有的引用指向person。

实例和对象的区别,从定义上来讲:

1、实例是类的具象化产品,

2、而对象是一个具有多种属性的内容结构。

实例都是对象,而对象不全是实例。

Js里面没有类(ES6以前)的语法,所以类的概念就通过创造一个对象来实现。

这段代码很简单,你应该是不明白两个运行结果不一样的原因,我只说明运行结果不同的原因。

首先你要明白this关键字是与运行时环境有关,和声明时环境无关。

new test(1).fun2()这个fun2调用fun1时这句alert(tihs.m_num)这个this的运行环境是fun2,所以它代表fun2,只会弹出undefined,

new test(1).fun3()由于fun3的指针是指向fun1的,而fun1是test的一个属性,这句alert(tihs.m_num)这个this的运行环境是test,所以它代表test,只会弹出5。

var gaga= new Gaga( "尜尜",null,"黑色")这样就是一个对象的实例化;

实例化对象,其实就是创建对象过程;

要用一个类中的一个方法。如果这个类是静态类,那么ok,可以直接调用这个方法。

可是如果这个类不是静态类呢?

就需要用对象来引用这个方法了。那么对象如何来呢?就需要new一下了。

例:B类要调用,A类中的 gaga()方法。

那么在调用干这个方法之前,必须要要创建A的对象。

A a = new Gaga()

a.Gaga()