ES6学习-4.扩展对象的功能性

1、对象字面量语法扩展-属性初始值的简写

例如下面的代码,属性初始化如果key值和变量名一直,可以省略不写。

2、对象字面量语法扩展-方法的简写

例如下面的代码,方法的定义可以直接写方法名。这个简写主要是用于super关键字的使用,下面会说。

3、对象字面量语法扩展-可计算属性名

例如以下代码,属性名可以使用变量计算。

4、对象新增的方法-Object.is()

这个方法主要是用来弥补全等运算符不准确的运算。接受两个参数,如果这两个参数类型相同且具有相同的值,则返回true。如以下代码:

5、对象新增的方法-Object.assign()

这个方法实现的其实就是混合(Mixin)将一个对象的属性或者方法给另外一个对象。例如以下的代码:myObject接受了EventTarget的属性和方法,就可以使用相应的属性和方法了。

6、添加Object.setPrototypeOf()方法,可以改变原型

例如以下代码:以person为原型创建一个实例,可以使用person相关的方法和属性,在后面可以修改friend的原型为dog,使用dog原型的相关方法和属性。

7、Super引用

super引用相当于指向对象原型的指针,实际上也就是Object.getPrototypeOf(this)的值。可以看以下代码:

这就是上面说的为什么对象方法必须用简写方法,看下面的代码:

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 第四章 扩展对象的功能性 1. 对象字面量语法扩展 直接看例子 ES6中通过属性初始化的简写语法,可以消除这种属性...
    NowhereToRun阅读 4,068评论 0 2
  • 前面的话 随着JS应用复杂度的不断增加,开发者在程序中使用对象的数量也在持续增长,因此对象使用效率的提升就变得至关...
    CodeMT阅读 4,348评论 0 0
  •   面向对象(Object-Oriented,OO)的语言有一个标志,那就是它们都有类的概念,而通过类可以创建任意...
    霜天晓阅读 6,490评论 0 6
  • 属性的简洁表示法 ES6允许直接写入变量和函数,作为对象的属性和方法。 上面代码表明,ES6允许在对象之中,直接写...
    oWSQo阅读 3,493评论 0 0
  • 在JavaScript中,几乎每一个值都是某种特定类型的对象,所以ES6加强了对象的功能性。 对象类别 ·普通对象...
    厂厂哥阅读 2,890评论 0 1

友情链接更多精彩内容