码迷,mamicode.com
首页 > 其他好文 > 详细

ES6对象的扩展

时间:2018-02-02 20:03:49      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:date   javascrip   区别   运行环境   不能   auth   简写   string   hello   

对象的扩展

对象类别

  • 普通对象: 拥有JS对象所有默认的内部行为;
  • 奇异对象: 其内部行为在某些方面别于默认行为;
  • 标准对象: 在ES6中被定义的对象, 如 Date, 标准对象既可以是 普通对象, 也可以是 奇异对象;
  • 内置对象: 脚本开始运行时由JS运行环境提供的对象, 所有的标准对象都是内置对象;

对象属性初始化器速记法

对于对象属性名称与其对应的属性值和本地变量重复的情况下可以使用 属性初始化器速记法 简写, 如:

const jsBook = function(author, year) {
    return { author, year };    // 属性初始化器速记法
};

方法简写(concise method)

可以省略关键字 function, 不多说, 直接看例子:

const jsBook = {
    <!-- 方法简写 -->
    read() {
        // write hello world
    }
};

使用这种方式定义的对象方法名字就是属性名, 而ES5的写法是可以在 function 关键字后指定一个名称做为该方法的名称, 还有一点区别是简写的方法可以使用 super, 非简写的不能

需计算属性名

允许属性名包含在变量中, 如:

const hash = Math.random().toString(36).slice(2);
const jsBook = {
    [hash]: hash    // 在使用计算属性名时无法使用属性初始化器速记法表示对象
}

ES6对象的扩展

标签:date   javascrip   区别   运行环境   不能   auth   简写   string   hello   

原文地址:https://www.cnblogs.com/idiv/p/8406374.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!