Object.is

可以看成是=== 的加强版, 其修正了 === 的 NaN 不等于自身, 以及 +0 等于 -0

另外说下, == 会自动转型, 但是 Object.is 也是如果类型不一致也是不相等的

Object.assign

用于对象的合并, 可以把对象的所有可以枚举属性复制到目标对象(枚举属性包含原型中的属性吗??? )  (=== 只拷贝原对象的自身属性, 不拷贝继承的, 也不拷贝不可枚举的)

如果原对象和目标对象有相同的属性名, 那么原对象会覆盖掉目标对象中的属性值 (这个可以用来批量修改一个对象中改变的值)

如果传入一个字符串, 那么会以数组的形式拷贝到其中, (这是一个很好的分解字符串的方式)

可以用来处理数组, 但是当做对象来处理的

拷贝的方式是浅拷贝, 就是对于对象中的对象拷贝的是引用

对于取值函数, 不会拷贝取值函数, 是求值后再拷贝 (什么是取值函数??)

用法总结:

  1. 为对象添加新的属性

  2. 克隆对象(不克隆原型, 可以使用 Object.create 来指定一个原型)

  3. 合并多个对象

  4. 为属性指定默认的值(覆盖的特性)

Object.getOwnPropertyDescriptors

得到一个对象所有属性的描述对象(注意不是对象, 而是对象的属性)

Object.setPrototypeOf

设置一个对象的原型

Object.getPrototypeOf

得到一个对象的原型

Object.keys

返回一个数组, 其内容是对象的键名

(除了 for in ,  似乎没有别的遍历对象的方式了, 要记住引入这个方法的意义)

Object.values

返回一个数组, 其内容死对象的所有的值

Object.entries

返回一个二维数组, 第一个数组存放的是健名, 第二个是值数组

Object.fromEntries

把一个二维数组转化为一个对象

es6的对象新增的方法的更多相关文章

  1. ES6中对象新增的方法

    属性的简洁表示法 ES6 允许在大括号里面直接写入变量和函数,作为对象的属性和方法.这样的书写更加简洁. const foo = 'bar'; const baz = { foo }; console ...

  2. ES6数组对象新增方法

    1. Array.from() Array.from方法用于将两类对象转为真正的数组:类数组的对象( array-like object )和可遍历( iterable )的对象(包括 ES6 新增的 ...

  3. es6Math对象新增的方法

    Math.trunc() Math.trunc方法用于去除一个数的小数部分,返回整数部分. 对于没有部署这个方法的环境,可以用下面的代码模拟. Math.trunc = Math.trunc || f ...

  4. es6 Object对象扩展新方法

    ES6给Object拓展了许多新的方法,如: keys(obj):获取对象的所有key形成的数组     var obj = { foo: 'bar', baz: 42 };  Object.keys ...

  5. ES6中数组新增的方法-超级好用

    Array.find((item,indexArr,arr)=>{}) 掌握 找出第一个符合条件的数组成员. 它的参数是一个回调函数,对所有数组成员依次执行该回调函数. 直到找出第一个返回值为t ...

  6. ES5对象新增的方法

    Object.is()-----判断是否全等,和===一样Object.assign()-----对象的复制Object.keys()-----以数组的形式返回所有可遍历属性的键名,原型上的属性不能遍 ...

  7. javascript 字符串对象新增 replaceAll 方法

    String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) { if(! RegExp.prototype.is ...

  8. ES6 - 对象

    ES6为对象带来的新特性. 对象传统的写法: let person={ 'name':'Lily', 'say':function(){ alert('hello!'); } } 1.ES6中写法更简 ...

  9. ES6中对象的扩展

    ES6不仅为字符串.数值和数组带来了扩展,也为对象带来了很多新特性.这一节,我们来一起学习一下对象的扩展. 对象的传统表示法 我们回顾一下,对象的传统表示法: let person = { " ...

随机推荐

  1. ActiveMQ之topic主题模式

    开发环境我们使用的是ActiveMQ 5.11.1 Release的Windows版,官网最新版是ActiveMQ 5.12.0 Release,大家可以自行下载,下载地址.需要注意的是,开发时候,要 ...

  2. java 数组复制

    http://www.cnblogs.com/zhengbin/p/5671403.html http://www.cnblogs.com/jjdcxy/p/5870524.html Java数组拷贝 ...

  3. 51nod--1079 中国剩余定理

    题目: 1079 中国剩余定理 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 一个正整数K,给出K Mod 一些质数的结果,求符合条件的最小的K.例如,K ...

  4. mysql修改字符集

    文章链接:https://www.cnblogs.com/hubavyn/p/4359315.html mysql修改表.字段.库的字符集(转) 原文链接:http://fatkun.com/2011 ...

  5. Jmeter性能测试之参数化(二)

    Jmeter参数化主要有3种方式: 1. Add--> Pre Processors--> User Parameters 2. Add--> Config Element--> ...

  6. Hdu 1022 Train Problem I 栈

    Train Problem I Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  7. python之验证码识别 特征向量提取和余弦相似性比较

    0.目录 1.参考2.没事画个流程图3.完整代码4.改进方向 1.参考 https://en.wikipedia.org/wiki/Cosine_similarity https://zh.wikip ...

  8. getOrderValue 排序 sql server

    GO -- =============================================-- Author:        <Author,,rx.tang>-- Creat ...

  9. jmeter的基本功能使用详解

    jmeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简 单.因为jmeter是java开发的,所以运行的时候必须先要 ...

  10. Codeforces.1139D.Steps to One(DP 莫比乌斯反演)

    题目链接 啊啊啊我在干什么啊.怎么这么颓一道题做这么久.. 又记错莫比乌斯反演式子了(╯‵□′)╯︵┻━┻ \(Description\) 给定\(n\).有一个初始为空的集合\(S\).令\(g\) ...