ES6学习教程之对象字面量详解
2017-10-09 10:07
726 查看
前言
本文主要给大家介绍了关于ES6对象字面量的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。
ECMAScript6使得声明对象字面量更加简单,提供了属性简写和方法简写功能,属性名计算的新特性。
function getInfo(name, age, weight) { return { // 如果属性名和属性值同名可以利用、es6的属性简写 name, // 等同于 make: make age, // 等同于 model: model weight, // 等同于 value: value // ES6的属性名是可计算的 ['over' + weight]: true, // 对象方法名简写可以省略 function 关键字 descripte() { console.log(name, age, weight); } }; } let person = getInfo('Kia', 27, 400); console.log(person);// {name: "Kia", age: 27, weight: 400, over400: true, descripte: ƒ}
如果可以理解上述三个新特性,可以不必往下阅读。下面的文字仅提供给还有疑问的朋友。
属性简写
在 ES5及以前的版本中,对象字面量只支持键值对集合。实际业务中,对象字面量的初始化会有一定的代码重复。
//ES5 function createPeople(name, age) { return { name: name, age: age }; }
createPeople函数用来创建一个People的对象,可以看到上面的代码的 name和age分别书写了两次,有些麻烦。在ES6中通过使用属性简写特性可以消除这种属性名称和局部变量之间的重复书写,当对象的属性和变量同名时,可以不必再写冒号和值。
function createPeople(name, age) { return { name, age }; }
方法名简写
ES5中若为对象添加方法必须指定方法名称,并完整地定义函数来实现。
var people = { name: 'xixi', sayName: function () { console.log(this.name); } };
ES6的语法更简洁,消除了冒号和方法名。
let people = { name: 'xixi', sayName() { console.log(this.name); } }; people.sayName();// xixi
属性可计算
let lastName = 'last name'; let person = { [lastName]: 'yuan' }; console.log(person[lastName]);// yuan
总结
对象字面量扩展的3个新特性介绍完毕,大家可以回到文章开头检查一下自己是否掌握了本小结内容。
好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。
您可能感兴趣的文章:
相关文章推荐
- ES6学习教程之对象的扩展详解
- [js高手之路] es6系列教程 - 对象功能扩展详解
- ES6学习教程之块级作用域详解
- [js高手之路] es6系列教程 - 对象功能扩展详解
- ES6学习教程之模板字符串详解
- RxSwift学习教程之类型对象Subject详解
- 《JavaScript高级程序设计 第三版》学习笔记 (四) 对象创建详解
- [js高手之路] es6系列教程 - 箭头函数详解
- Oracle 学习:PL/SQL循序渐进全面学习教程--课程七 其他数据库对象
- ES6之对象字面量扩展语法(Enhanced Object Literals)
- es6对象字面量增强
- Angular 4.0学习教程之架构详解
- ES6学习--字符串、数组、对象、函数新增点
- 【Scikit-Learn 中文文档】机器学习: scikit-learn 中的设置以及预估对象 - 关于科学数据处理的统计学习教程 - scikit-learn 教程 | ApacheCN
- es6字符串,数组,对象学习总结
- ES6入门教程之Iterator与for...of循环详解
- Javascript学习之Date对象详解
- 优就业JS教程-JavaScript创建对象4种方法详解
- [js高手之路] es6系列教程 - 箭头函数详解
- three20 教程 学习笔记 three20 NetWork 详解