ES6新特性之Object的变化分析


Posted in Javascript onMarch 31, 2017

本文实例讲述了ES6新特性之Object的变化。分享给大家供大家参考,具体如下:

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) 返回true,Object.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"}

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

希望本文所述对大家ECMAScript程序设计有所帮助。

Javascript 相关文章推荐
短信提示使用 特效
Jan 19 Javascript
JQuery的$和其它JS发生冲突的快速解决方法
Jan 24 Javascript
分享一个自己动手写的jQuery分页插件
Aug 28 Javascript
JavaScript中setUTCFullYear()方法的使用简介
Jun 12 Javascript
SpringMVC restful 注解之@RequestBody进行json与object转换
Dec 10 Javascript
BootStrap中的table实现数据填充与分页应用小结
May 26 Javascript
浅述节点的创建及常见功能的实现
Dec 15 Javascript
AngularJS打开页面隐藏显示表达式用法示例
Dec 25 Javascript
移动端网页开发调试神器Eruda的介绍与使用技巧
Oct 30 Javascript
Redux实现组合计数器的示例代码
Jul 04 Javascript
js中async函数结合promise的小案例浅析
Apr 14 Javascript
vue中重定向redirect:‘/index‘,不显示问题、跳转出错的完美解决
Sep 28 Javascript
ES6新数据结构Set与WeakSet用法分析
Mar 31 #Javascript
ES6新数据结构Map功能与用法示例
Mar 31 #Javascript
基于AGS JS开发自定义贴图图层
Mar 31 #Javascript
Node.js使用Express创建Web项目详细教程
Mar 31 #Javascript
ES6使用let命令更简单的实现块级作用域实例分析
Mar 31 #Javascript
JS解决移动web开发手机输入框弹出的问题
Mar 31 #Javascript
详解使用JS如何制作简单的ASCII图与单极图
Mar 31 #Javascript
You might like
PHP array 的加法操作代码
2010/07/24 PHP
PHP输出数组中重名的元素的几种处理方法
2012/09/05 PHP
浅析使用Turck-mmcache编译来加速、优化PHP代码
2013/06/20 PHP
PHP 网站修改默认访问文件的nginx配置
2017/05/27 PHP
CSS常用网站布局实例
2008/04/03 Javascript
js中string转int把String类型转化成int类型
2014/08/13 Javascript
JavaScript中的数值范围介绍
2014/12/29 Javascript
AngularJs 60分钟入门基础教程
2016/04/03 Javascript
JavaScript的MVVM库Vue.js入门学习笔记
2016/05/03 Javascript
jquery实现全选、不选、反选的两种方法
2016/09/06 Javascript
jQuery实现的图片轮播效果完整示例
2016/09/12 Javascript
KnockoutJS 3.X API 第四章之事件event绑定
2016/10/10 Javascript
jQuery实现checkbox列表的全选、反选功能
2016/11/24 Javascript
canvas时钟效果
2017/02/16 Javascript
ES6新特性之模块Module用法详解
2017/04/01 Javascript
Bootstrap模态框插入视频的实现代码
2017/06/25 Javascript
利用jQuery+localStorage实现一个简易的计时器示例代码
2017/12/25 jQuery
Vue监听数据渲染DOM完以后执行某个函数详解
2018/09/11 Javascript
vue如何根据网站路由判断页面主题色详解
2018/11/02 Javascript
VUE路由动态加载实例代码讲解
2019/08/26 Javascript
vue自定义switch开关组件,实现样式可自行更改
2019/11/01 Javascript
js 获取本周、上周、本月、上月、本季度、上季度的开始结束日期
2020/02/01 Javascript
从零学python系列之从文件读取和保存数据
2014/05/23 Python
Python中操作mysql的pymysql模块详解
2016/09/13 Python
用virtualenv建立多个Python独立虚拟开发环境
2017/07/06 Python
python itchat实现微信自动回复的示例代码
2017/08/14 Python
Python Excel处理库openpyxl使用详解
2019/05/09 Python
基于HTML5 audio元素播放声音jQuery小插件
2011/05/11 HTML / CSS
让ie浏览器成为支持html5的浏览器的解决方法(使用html5shiv)
2014/04/08 HTML / CSS
For Art’s Sake官网:手工制作的奢华眼镜
2018/12/15 全球购物
Bloomingdale’s阿联酋:选购奢华时尚、美容及更多
2020/09/22 全球购物
总经理秘书工作职责
2013/12/26 职场文书
2014年小学教导处工作总结
2014/12/19 职场文书
初三英语教学计划
2015/01/23 职场文书
2016年“六一儿童节”校园广播稿
2015/12/17 职场文书
java实现对Hadoop的操作
2021/07/01 Java/Android