博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ES6-Object的变化
阅读量:3661 次
发布时间:2019-05-21

本文共 953 字,大约阅读时间需要 3 分钟。

Object的变化

1. ES6允许在对象中只写属性名,不写属性值,属性值为属性名对应的变量值。

var a = 'hi';	var obj = {a};	console.log(obj); //Object {a: "hi"}

2.对象内方法的简写。

var a = 'hi';	var obj = {		name: 'ES6',		a,		sayHi(){			console.log(this.a+' '+this.name);		}	}	obj.sayHi(); //hi ES6

3.ES6允许字面量定义对象时用表达式作为对象的属性名。

var a = 'b';	var obj = {		[a]: 'ES6',		['c' + 'd']: 'hi'	}	console.log(obj); // Object {b: "ES6", cd: "hi"}

4.对象内方法名可以通过name访问。

var a = 'hi';	var obj = {		name: 'ES6',		a,		sayHi(){			console.log(this.a+' '+this.name);		}	}	obj.sayHi(); //hi ES6	console.log(obj.sayHi.name); //sayHi

5.Object.is()

用来比较两个值是否严格相等,与 ===  的区别在于, Object.is(NaN, NaN) 返回trueObject.is(+0, -0) 返回false

6.Object.Assign()

用于将源对象的所有可枚举属性复制到目标对象上。

var obj_source_1 = {		a: {			a1: 'hi',			a2: 'ES6'		},		b: 'hello'	}	var obj_source_2 = {		c: 'ES2015',	}	var result = Object.assign({}, obj_source_1, obj_source_2);	console.log(result); //Object {a: Object, b: "hello", c: "ES2015"}

一般用法:为对象添加属性、方法,克隆对象,合并对象。

转载地址:http://hiefn.baihongyu.com/

你可能感兴趣的文章
nginx部署
查看>>
Spring Cloud Alibaba——转载自楠哥
查看>>
Springboot + slf4j日志
查看>>
信息安全
查看>>
Linux部署后问题排查
查看>>
项目打包问题
查看>>
Nacos
查看>>
Gateway网关
查看>>
Spring注解
查看>>
Validate注解校验
查看>>
01 Laravel-框架核心要点
查看>>
9. JavaScript 构造函数和原型
查看>>
12.2 ES6新特性:Symbol、Promise、迭代器和生成器
查看>>
12.3 ES6 新特性- Set、Map、class 类和模块化
查看>>
Docker-入门简介-Study01
查看>>
Docke-CentOS安装-Study02
查看>>
Docker-常用命令-Study03
查看>>
Docker-镜像原理-Study04
查看>>
Docker-Tomcat为何看不到访问界面?
查看>>
IDEA-忽略文件显示
查看>>