js--对象创建的几种方式

js–对象创建的几种方式

一、字面量创建

1、创建的语法:{}
2、设置内容的语法:(1)对象.属性 = 要设置的内容 (2) 或创建时就在{}里设置内容
3、获取内容:(1)对象.属性 (2)当目前的属性名不是一个具体的值,是一个变量时:对象[变量]
在这里插入图片描述

二、内置构造函数创建

1、创建的语法:new 操作符 + Object()
2、设置内容的语法:对象.属性 = 要设置的内容
3、获取内容:对象.属性
在这里插入图片描述
用前两种方式实现某个相同的功能要创建多个对象时,会产生大量重复属性和方法。如下例子想要完成多人的自我介绍:
在这里插入图片描述

为了解决大量重复代码产生,工厂模式被开发了。

三、工厂模式创建

在这里插入图片描述
工厂模式解决了重复实例化多个对象的问题,但没有解决对象识别的问题。也就是对象的类型都是Object,因此出现了构造函数模式

四、自定义构造函数创建

在这里插入图片描述
多次new同一个构造函数时,会在内存中产生了多个同名功能,但它们来自于同一个模板,浪费内存。为了解决构造函数的缺点可以让我们更合理、方便的给实例添加方法否则构造函数只能给实例添加属性,不能合理的添加方法,因此原型出现了。

五、原型模式

在这里插入图片描述
1.在使用构造函数方式创建对象时:
(1) 将 将来的属性,写在构造函数内部,通过this绑定给将来的实例
(2) 将 将来的方法,写在构造函数的原型上,会自动被将来的实例获取。
2.自定义构造函数时new的的原理:
(1)创建一个新对象
(2)改变函数内的this指向,为这个新对象
(3)执行函数内的代码,并将新对象的__proto__指向该函数的prototype
(4)检查函数是否主动返回对象,如果没有,则返回这个新对象

发布了6 篇原创文章 · 获赞 16 · 访问量 307

猜你喜欢

转载自blog.csdn.net/weixin_46370310/article/details/104655332