常用处理数据用法es6 语法糖总结
一 循环(数组 ,集合)
const arr = ['red', 'green', 'blue'];
arr.forEach( (element, index)=> {
console.log(element); // red green blue
console.log(index); // 0 1 2
});
//Foreach 循环处理item的时候, 只处理某字段,其他字段不用管,还是在!
二 Map--------处理集合列表,里面的 具体item
三 Filter -----------集合条件过滤
四 slice----------------截取集合 ,前闭后开!
五 concat----------------合并数组
六 splice-----数组截取 ,替换
七 Shift/unshift ----附加和移除 ,数组最前面的元素
八 push / pop -----附加和移除 ,数组 最后面的 元素
九 set ------数组添加唯一的值
let set1 = new Set()
set1.add(1)
set1.add(2)
set1.add(3)
console.log('added:', set1)
added: Set { 1, 2, 3 }
let set1 = new Set()
set1.add(1)
set1.add(2)
set1.add(3)
set1.delete(1)
console.log('deleted:', set1)
deleted: Set { 2, 3 }
let set1 = new Set()
set1.add(1)
set1.add(2)
set1.add(3)
set1.delete(1)
console.log('has(1):', set1.has(1))
console.log('has(2):', set1.has(2))
has(1): false
has(2): true
let set1 = new Set()
set1.add(1)
set1.add(2)
set1.add(3)
set1.clear()
console.log('cleared:', set1)
cleared: Set {}
let set2 = new Set([4,5,6])
console.log('array to set 1:', set2)
let set3 = new Set(new Array(7, 8, 9))
console.log('array to set 2:', set3)
array to set 2: Set { 4, 5, 6 }
array to set 3: Set { 7, 8, 9 }
let set4 = new Set([4, 5, 6])
console.log('set to array 1:', [...set4])
console.log('set to array 2:', Array.from(set4))
set to array 1: [ 4, 5, 6 ]
set to array 2: [ 4, 5, 6 ]
十 解构函数 (比较方便处理模块化的逻辑)
if (Object.prototype.toString.call(data) === '[object Array]') {
if (!data.length) {
// 成功无数据
resolve({ errorCode: 0, data: { success: true } });
return;
}
}
4 空对象---{} es5就支持
if (Object.prototype.toString.call(data) === '[object Object]') {
if (JSON.stringify(data) === JSON.stringify({})) {
// 成功无数据
resolve({ errorCode: 0, data: { success: true } });
return;
}
}
Object.assign(target,…sources)
当target和sources对象中有相同的key时,在target对象中的值会被后面source对象的值覆盖。
target对象自身会被修改
var o1 = { a: 1 };
var o2 = { b: 2 };
var o3 = { c: 3 };
var obj = Object.assign(o1, o2, o3);
console.log(obj); // { a: 1, b: 2, c: 3 }
console.log(o1); // { a: 1, b: 2, c: 3 },
如果想要避免o1被改变,需要这样写:
var obj = Object.assign({},o1,o2,o3);//给一个空对象作为target,这样改变的是空对象
console.log(obj);// { a: 1, b: 2, c: 3 }
console.log(o1); // { a: 1}
常用处理数据用法es6 语法糖总结的更多相关文章
- ES6 语法糖
重新认识ES6中的语法糖:https://segmentfault.com/a/1190000010159725
- es6语法糖
ES6为一些已有的功能提供了非破坏性更新,这类新语法能做的事情其实用ES5也可以做,只是会稍微复杂一些,称之为语法糖. 对象属性的简洁表示法 声明的对象中包含若干属性,其属性值由变量表示,且变量名和属 ...
- ES6语法糖集锦
sublime3安装Es6插件 javascriptNext,然后安装即可 JavaScriptNext - ES6 Syntax()高亮插件 -------------------------- ...
- ES6深入浅出-3 三个点运算 & 新版字符串-1.函数与对象的语法糖
主要讲的内容 时间充裕的话就讲,模板字面量 默认参数值 首先讲es6之前,我们是怎么做的.例如我们要写一个求和的函数, 请两个参数的和,但是如果有的人就是穿一个参数呢? 那么b没有传值,b的值是多少呢 ...
- ES6语法的新特性
ES6 就是ECMAScript 6是新版本JavaScript语言的标准.虽然目前已经更新到ES7,但是很多浏览器还不知处ES7语法,该标准仍在更新中,但目前部门网站都指出ES6的语法.目前ES6也 ...
- 常用的ES6语法
1. let.const 和 block 作用域 let 允许创建块级作用域,ES6 推荐在函数中使用 let 定义变量,而非 var: var a = 2; { let a = 3; console ...
- 详解es6 class语法糖中constructor方法和super的作用
大多数面向对象的编程语言都支持类和类继承的特性,而JS却不支持这些特性,只能通过其他方法定义并关联多个相似的对象,这种状态一直延续到了ES5.由于类似的库层出不穷,最终还是在ECMAScript 6中 ...
- ES6语法 promise用法
ES6语法 promise用法 function doSomething(){ return new Promise((resolve,reject)=>{ resolve('jjjj');// ...
- ES6之对象的语法糖
本文介绍下ES6中对象的一些拓展功能. 这三个语法糖在实际的项目开发中经常会见到.
随机推荐
- vue +bootstrap 写的小例子
最近vue挺火,最近也不是特别忙,就学习了下. vue和angular非常像都是MVVM.道理都是想通的,就是语法的差异 我觉得vue和angular区别: 1.vue更轻,更便捷,适用于移动开发 2 ...
- Keepalived+Nginx高可用架构配置
1.yum install -y libnfnetlink-devel2.yum -y install libnl libnl-devel 3.yum -y install openssl-devel ...
- Mybatis-Plus 实战完整学习笔记(八)------delete测试
1.根据ID删除一个员工deleteById /** * 删除客户 * * @throws SQLException */ @Test public void deletedMethod() thro ...
- VSS + Eclipse 管理源码
- Ajax地域选择demo
index.jsp只用于转发到Servlet获得省份数据再转发到province.jsp index.jsp <%@ page language="java" content ...
- castapp.js颜色配置
1 修改head的背颜色 (1) header添加class publicHead <header class="mui-bar mui-bar-nav publicHead&qu ...
- 关于memcached
代振军 http://www.cnblogs.com/daizhj/archive/2009/03/23/1386652.html http://www.cnblogs.com/daizhj/arch ...
- noip第25课作业
1. 求一个有向图所有顶点入度的和 输入有向图的顶点个数,边数以及各顶点之间的关联情况,要求求出这个有向图的所有顶点入度的总和. [输入格式] 第1行:2个空格分开的整数n(2<=n< ...
- [转]Android SQLite
数据库操作SQLite Expert Personal 3 注:下载相关SQLite的文档在:http://www.sqlite.org/ 具体的sql语句不作长细介绍,在本博客中也有相关的文章. 一 ...
- 第86讲:Scala中For表达式的生成器、定义和过滤器
今天我们来看一下For表达式中的生成器,定义和过滤等内容. 让我们来看下代码 def main(args:Array[String]){ val lauren = Persons(" ...