Osheep

时光不回头,当下最重要。

es6对象扩展

es6对于对象做了很多扩展,现做以下总结。
特性:

  • ES6 允许直接写入变量和函数,作为对象的属性和方法。
let obj = {
  name: 'liming',
  method: function() {
    return "Hello!";
  }
};
//等同于
let name = 'liming';
let obj = {
  name,
  method() {
    return "Hello!";
  }
};
  • Object.is()方法比较两个值是否严格相等,与===的不同之处在于,+0不等于-0;NaN等于自身。即:
Object.is(+0, -0);     //false
Object.is(NaN, NaN);  //true
  • Object.assign()方法用于对象的合并。将源对象自身的所有可枚举属性,复制到目标对象。第一个参数是目标对象,后面的参数都是源对象。
  • Object.getPrototypeOf()方法用于读取一个对象的原型对象。
  • Object.setPrototypeOf()用来设置一个对象的prototype对象,返回参数对象本身。
  • Object.getOwnPropertyDescriptors()返回某个对象属性的描述对象。
  • Object.keys()返回一个数组,成员是参数对象自身的所有可遍历属性的键名。
  • Object.values()返回一个数组,成员是参数对象自身的所有可遍历属性的键值。
  • Object.entries()返回一个数组,成员是参数对象自身的所有可遍历属性的键值对数组。

本文只是学习es6的一些简单笔记,详情请看阮一峰的es6入门

点赞