首页

文章

JS对象创建常用方式有哪些

发布网友 发布时间:2022-04-20 02:58

我来回答

2个回答

懂视网 时间:2022-04-29 10:19

一、字面量方式

var obj = {
 name: 'mm',
 age: 18,
 sayName: function() { 
 console.log(this.name);
 }
}

问题:创建多个对象时会造成代码冗余,很占内存空间。

二、工厂模式

02e4cfb45e5b62d72c7f40b7ab6e247.png

问题:虽然解决了对象字面量创造对象冗余的问题,但是存在对象识别的问题,不能反映它们之间的内在关系。

三、构造函数模式

c2fbbdc5cf087b95289f3ab7f66f7a5.png

问题:解决了工厂模式的问题,但是相同方法重复创建就浪费了内存空间。

四、原型模式

2e0a2decf6815b3b72f294b00ab194d.png

问题:共享方法,解决了构造函数的问题。但是当前实例的引用类型的属性被所有实例共享,一个变所有变。

五、组合模式(构造函数+原型模式)

13c345862861f48cb18cc7749db978f.png

这是常用的创建方式。

通过构造函数模式定义实例属性,通过原型模式定义方法和共享的属性。

推荐教程:js入门教程

热心网友 时间:2022-04-29 07:27

1.对象字面量创建对象
var obj = { a:1,b:2 };
注意:对象字面量是一个表达式,这种表达式每次运算都会创建并初始化一个新对象,并计算这个新对象的每个属性值。所以如果在循环体内使用对象字面量,每次循环时都会创建新对象。
2.通过new运算符创建对象
var obj = new Object(); //创建空对象 var ary = new Array(); //创建空的数组对象
注意:new运算符后面跟的是一个函数调用,这个函数被称为构造函数。js中原始类型都包含内置的构造函数,也可以自己定义构造函数。
3.通过立即执行函数创建对象
var obj = (function(){ return {x:1,y:2};}());
注意:在立即执行函数内部一定要有return语句,return出的内容就是待创建的对象。
4.通过Object.create()创建对象
var obj = Object.create({x:1,y:2});
注意:Object.create()是一个静态函数,传入原型对象就可以创建继承此原型对象的对象,例如上面的例子中obj对象继承了x,y属性。
八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... 陕西职务侵占案立案准则 结婚后我的恋情维系了十年,怎么做到的? 玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 【译】将HTML转为PDF的几种实现方案 变形金刚08动画怎么样 变形金刚08动画的问题 变形金刚08动画日语版剧情介绍 高分!换显卡nvidia控制面板被我卸了,重新安装显卡驱动后没了nvidia控... 我的nvidia控制面板被卸载了 怎么找回啊 卸载后 这个画面看着很奇怪_百 ... 李卓彬工作简历 林少明工作简历 广东工业职业技术学院怎么样 郑德涛任职简历 唐新桂个人简历 土地入股的定义 ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 绿萝扦插多少天后发芽 绿萝扦插多久发芽 扦插绿萝多久发芽 炖牛排骨的做法和配料 网络诈骗定罪标准揭秘 “流水不争先”是什么意思? mc中钻石装备怎么做 为什么我的MC里的钻石块是这样的?我想要那种。是不是版本的问题?如果是... 带“偷儿”的诗句 js对象的用法是什么? OPPO R11有没有计步器? 邮政快递包寰,有邮政快递包裹9897148774560? 2022年上映电视剧时间表全部 哪位有我爱你,这是最好的安排(2019)主演张彬彬、... 抖音很火两个字的歌名是什么? 最后唐舞麟和霍雨浩哪个比较厉害。 变态这个词是什么时候开始流行的网络语言?还是一... 有没有什么最新的恐怖的电影、 新上映的电影有哪些? 琅寰书院等级 2019年的教师节有几周年? 据说攀登者预售破亿,2019年国庆档都有哪些电影部... 29岁喜茶创始人身价40亿,他是如何实现逆袭的? 哪位大神有路人女主的养成方法fine2019年由松冈祯... 杨紫2019年拍了哪些戏,哪一个更值得期待? 做ppt如何突出重点? 跪求路人女主的养成方法2019年上映的由松冈祯丞主... 在幻灯片播放中如何圈点某一部分 求小说《凡人修仙传》人物介绍 Js面向对象有几种方式? js中创建对象的方式有几种,哪几种 JavaScript定义对象的方法有哪些? js创建对象有几种方式 js面向对象的几种方式 JS使用new操作符创建对象的方法分析 js中的math对象有哪些常用的方法,其用法和作用是什么 js对象有哪些类型,创建js对象的方式 怎么验证oracle已经连接java JavaScript中window对象常用的属性、方法 js中对象所拥有的方法有哪些 Oracle新出的Java认证和以前的SCJP有区别吗?是不... 公众号怎么引流推广? JS面向对象之常见创建对象的几种方式 关于思科认证,华为认证,Oracle,Linux认证 | JAV... 微信公众号引流的方法有哪些? js调用对象中的方法 公众号如何快速引流推广呢? Oracle 的 Java认证证书补发 js创建对象几种方式的优缺点对比
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com