JavaScript 对象创建的3种方法分别是什么
发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,本篇文章给大家分享的是有关JavaScript 对象创建的3种方法分别是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。前言:在 Ja
千家信息网最后更新 2025年01月19日JavaScript 对象创建的3种方法分别是什么3、使用 Object.create() 创建对象
本篇文章给大家分享的是有关JavaScript 对象创建的3种方法分别是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
前言:
在 JavaScript
中,对象是一组有属性名和属性值组成的无序集合,对象的创建可以通过对象字面量、new
关键字 和Object.create()
函数来创建。
1、对象字面量
let obj = {} // 空对象let obj2 = {a:1, b:2}let obj3 = {" hel": "wold"} // 属性名如果有空格,可以用字符串字面量作为属性名
2、new 关键字创建对象
使用 new
关键字后面调用构造函数,创建一个新的对象
let o = new Object(); // 内置的构造函数let m = new Math();let a = new Array();let d = new Date();function Person(){ //自定义构造函数}let person = new Person()
3、使用 Object.create() 创建对象
let o = Object.create({x:1, y:2});console.log(o.x+o.y) //3
新对象o 将继承 {x:1, y:2}
,属性x和y称为继承属性, 如果传入的参数是null
,则这个对象不会继承任何对象。被继承的对象又称之为"原型"。
Object.create(null)
4、 使用扩展操作符:...
ES2018新增了扩展操作符...,将已有的对象属性复制到新的对象中
let foo = {x:1, y:2}let bar = {z:3}let zoo = {...foo, ...bar}console.log(zoo) // {x:1, y:2, z:3}
需要注意的几点:
扩展操作符只扩展对象的自有属性,继承属性不支持扩展
如果扩展对象和被扩展的对象有相同名字的属性,属性的值由后面的对象决定
5、使用Object.assign()方法
assign
可以把一个对象的属性复制到另一个对象, assign
接收两个或多个参数,第一个参数为目标对象,第二个及后续参数为来源对象,函数将把来源对象的属性复制到目标对象,并返回目标对象。
let foo = {x:1, y:2}let bar = {z:3}let zoo = {}let obj = Object.assign(zoo, foo, bar)console.log(zoo) // {x:1, y:2, z:3}console.log(obj===zoo) // true
另外补充两个ES6
中新增的对象特性
6、简写属性
如果想创建多个变量名和对应值组合成的对象,原来需要像传统对象字面量语法构建对象
let x=1, y =2;let o = {x:x, y:y}console.log(o) // {x:1, y:2}
ES6
之后可直接简写属性,省去分号和属性名
let o2 = {x, y}console.log(o2) // {x:1, y:2}
7、简写方法
在对象中定义方法时,ES6
以前需要,定义方法时需要像定义普通属性一样,通过函数表达式定义方法
let point={ x:1, y:2, area: function(){ return this.x*this.y }}console.log(point.area()) //2
而ES6
之后可以省略冒号和function
关键字,以一种简单的方式来定义对象的方法。
let point2={ x:1, y:2, area(){ return this.x*this.y }}console.log(point2.area()) //2
以上就是JavaScript 对象创建的3种方法分别是什么,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
对象
属性
方法
函数
关键
关键字
参数
字面
操作符
目标
简写
两个
多个
更多
来源
知识
篇文章
实用
普通
相同
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库在gis上打不开
学网络安全可以从事什么工作
未来无线通信网络技术研讨会
部队网络安全知识教育视频
软件开发公司的使命
无锡自动软件开发生产过程
蚂蚁笔记服务器部署
服务器可视化运维系统
高斯数据库视图
服务器管理口和普通网口
马鞍山hpe刀片服务器多少钱
龙族服务器
网游服务器与本地端的数据交换
青岛学软件开发哪里好
奉化安卓软件开发项目
软件开发的工厂模式是什么
用友数据库恢复mdf文件
苹果icloud链接服务器超时
交通应用软件开发经验
均满网络技术
网络安全法对管理失控怎么处理
下面关于服务器端开发技术的描述
城口网络安全审计系统咨询费用
理奥网络技术
珠海符号互联网科技
首汽租车软件开发
龙族服务器
诛仙世界服务器
关于网络安全有哪些方面
福州定制软件开发多少钱