ES6中Object新增方法
1、Object.is()
Object.is()它用来比较两个值是否严格相等,与严格比较运算符( === )的行为基本一致,是在三等号判断的基础上新增了两个不同之处。
Object.is()不同之处只有两个:一是+0不等于-0
,二是NaN等于自身
。
2、Object.assign()
Object.assign()方法用于对象的合并,将源对象( source )的所有可枚举属性,复制到目标对象( target )。
注意:
这里是浅拷贝
!!
如果目标对象与源对象有同名属性,或多个源对象有同名属性,则后面的属性会覆盖
前面的属性!!
let obj1 = {a:{b:1},b:22};
let obj2 = Object.assign({b:11},obj1);
console.log(obj2); // {b:22,a:{b:1}}
//修改obj1的属性值
obj1.a.b = 2;
//这时会影响到obj2的属性值,这就是浅拷贝导致的
console.log(obj2.a.b); // 2
3、Object.keys()、Object.values()、Object.entries()
Object.keys()
方法,返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历( enumerable )属性的键名
数组。
Object.values()
方法返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历( enumerable )属性的键值
数组。
Object.entries()
方法返回一个数组,成员是参数对象自身的(不含继承的)所有可遍历( enumerable )属性的键值对
数组。
let obj = {name:"winne",age:22};
let objKeys = Object.keys(obj);
let objValues = Object.values(obj);
let objItem = Object.entries(obj);console.log(objKeys); //["name","age"]
console.log(objValues); //["winne",22]
console.log(objItem); //[["name","winne"],["age",22]]
取出了想要的部分,我们就可以遍历数组取得每一项了。
//for..of遍历for( let key of objKeys){console.log(key)
}
//name
//age//forEach遍历
objKeys.forEach(function(item,index){console.log(item,index);
})
//name 0
//age 1
ES6中Object新增方法相关推荐
- ES6中对象新增方法
1.object.is()判断两个值是否相等 <script type="text/javascript">var flag1 = Object.is('foo', ' ...
- ES6中字符串新增方法
1.重复输出字符串 string.repeat() <script type="text/javascript">var str = "by";co ...
- 23~49(构造函数+继承+类的本质+ES5中的新增方法)
1 构造函数和原型 1.1 概述 在典型的OOP的语言中(如Java),都存在类的概念,类就是对象的模板,对象就是类的实例,但在ES6之前,JS中并没用引入类的概念. ES6,全称ECMAScript ...
- java的object有show_Java中 Object的方法
Java中 Object的方法 构造方法摘要 Object() 方法摘要 protected Object clone() 创建并返回此对象的一个副本. boolean equals(Object o ...
- es6中的map方法
es6中的map方法 一.简单的说明 map是一种数据结构,类似于对象,但是里面的键的值可以是各种类型,包括对象也行 //声明Maplet m = new Map();m.set('name','zh ...
- JavaScript ES6中Object的新增方法
在 ES6 中,添加了Object.is().Object.assign().Object.keys().Object.values().Object.entries()等方法. 1. Object. ...
- JavaScript高级之ES5 中的新增方法
3.1 ES5 新增方法概述 ES5 中给我们新增了一些方法,可以很方便的操作数组或者字符串,这些方法主要包括: 数组方法 字符串方法 对象方法 3.2 数组方法 迭代(遍历)方法:forEach() ...
- php object keys_原生js中Object.keys方法详解
实际开发中,有时需要知道对象的所有属性,原生js提供了一个方法Object.keys(). Object.keys(obj)返回的是一个数组,该数组的所有元素都是字符串.这些元素是来自于给定的obj可 ...
- ES6中object对象属性
//es5中定义对象属性要么字面量.要么点.要么[],变量与空格在这些方法中没有得到好的支持 /在es6中可以这么定义: let w='www'; let obj1={w};//obj1={w:'ww ...
最新文章
- 向MPEG创始人Leonardo Chiariglione提问
- HTML,CSS,JaveScript
- 监听文件变化并自动运行 npm script
- python需要学多长时间
- visual studio能统计代码规模吗_描述统计之用——熟悉数据
- Python图像纹理分割
- 学计算机专业选择设计为类需要艺考,想学设计必须参加艺考吗?设计学类专业,新高考选科怎么选?...
- Raki的nlp-begginer 提问
- android开机优化-framework
- matlab 使用uci数据集,如何使用UCI数据集
- 数据库mysql5.7 sqlyog的安装
- 书单 | 深度学习修炼秘籍
- 解决WPS页码上有小横线问题
- eclipse设置背景图片(并非更换主题)
- 【炼数成金 NOSQL引航 一 】 进入NoSQL世界;NoSQL与SQL的战争
- 关于sbb eax, eax以及sbb eax, 0FFFFFFFFh指令连用
- 小程序接入h5页面_小程序与H5如何互相跳转
- IDEA的debug调试功能
- STM8L051 同时使用RTC和USART通信
- 半加器——Verilog HDL语言
热门文章
- Nginx 代理 TCP协议 MySQL连接
- Centos7的yum配置本地源及利用yum安装google
- 小米android7.1机型,心目中最牛逼的小米旗舰机:支持安卓7.1+骁龙801
- 安装LNMP环境并跑一个CI框架demo
- openlayers 在圆的边上添加文字
- oracle添加clob字段,oracle数据库clob字段处理
- 计算机维护方面的基础知识,电脑维护常识大全,安全上网的基本知识
- 我的邮箱客户端程序Popmail
- SAP Workflow 工作流开发步骤总结
- java rowmapper 通用实现_Spring JdbcTemplate 查询方法中的RowMapper实现汇总