ECMAScript6 ES6 ES2015新语法总结
1、let定义变量:不能重复定义、作用域
2、const:定义常量
3、解构赋值:let [a,b,c] = [1,2,3];// a=1 b=2 c=3
4、箭头函数:
function fn(a,b){
return a + b;
}
//等价于
let fn = (a,b) => {
return a + b;
}
//且等价于(若函数中只有一条return语句时)
let fn = (a,b) => a + b;
//若函数只有一个参数a
let fn = a => a + b;
5、数组新方法:
map映射:
let arr = [18,26,60,58,95,84];
let arr2 = arr.map(item => item>=60);/*[false, false, true, false, true, true]*/
6、promise的用法: 对于异步回调方法, 如果异步过多, 并且后面的异步要依赖前面异步的执行结果, 那多会有多层嵌套, 代码维护比较复杂, promise就是专门为了解决这种场景。实例如下:
promseTest:function(){
let p = new Promise(function(resolve,reject){
setTimeout(function(){
console.log("第一个异步执行完成");
resolve('第一个异步结果');
},2000);
});
return p;
},
promseTest1:function(){
let p = new Promise(function(resolve,reject){
setTimeout(function(){
console.log("第二个异步执行完成");
resolve('第二个异步结果');
},2000);
});
return p;
},
onLoad: function (options) {
let _this = this;
this.promseTest().then(function(data){
console.log(data);//第一个异步结果
return _this.promseTest1();//返回另外一个异步方法,在下一个then中执行
}).then(function(data){
console.log(data);//第二个异步结果
});
},
7、 Set 数据类型: 类似数组, 成员不重复
let set = new Set([1,2,2,3,4]); //1 2 3 4
set.add(5); set.has(1); set.delete(1);
console.log(set.size); //4
//数组去重
let set = new Set([1,2,2,3,4]); //数组转Set(自动去重)
let arrUnique = Array.form(set); //Set转数组
或 let arrUnique = [...new Set([1,2,2,3,4])]; //数组一步去重
//set集合操作
let a = new Set([1,2,3]);
let a = new Set([4,3,2]);
//Set求并集
let unique = new Set([...a,...b]); //Set(4) {1, 2, 3, 4}
//Set求交集
let com = new Set([...a].filter(x => b.has(x))); //Set(2) {2, 3}
//Set求差集
let diff = new Set([...a].filter(x => !b.has(x))); //Set(1) {1} a相对于了的差集
8、 Map 可以使用任何数据类型做为key的object
const m = new Map();
const o = {p:'hello world'};
m.set(o,"content");
console.log(m);
//数组定义map
const map = new Map([
['name', '张三'],
['title', 'Author']
]);
//相关属性
m.size; m.get('a'); m.set('a','a'); m.has('a'); m.delete('a'); m.clear();
let arr = [...map]; //Mmap 转数组 //也可以转object json
ECMAScript6 ES6 ES2015新语法总结的更多相关文章
- 总结常见的ES6新语法特性
前言 ES6是即将到来的新版本JavaScript语言的标准,他给我们带来了更"甜"的语法糖(一种语法,使得语言更容易理解和更具有可读性,也让我们编写代码更加简单快捷),如箭头函数 ...
- 总结常见的ES6新语法特性。
前言 ES6是即将到来的新版本JavaScript语言的标准,他给我们带来了更"甜"的语法糖(一种语法,使得语言更容易理解和更具有可读性,也让我们编写代码更加简单快捷),如箭头函数 ...
- ES6 | ES6新语法 在编码实践中的应用
本章探讨如何将 ES6 的新语法,运用到编码实践之中,与传统的 JavaScript 语法结合在一起,写出合理的.易于阅读和维护的代码. 多家公司和组织已经公开了它们的风格规范,本文的内容主要参考了 ...
- 如何在webpack开发中利用vue框架使用ES6中提供的新语法
在webpack中开发,会遇到一大推问题,特别是babel6升级到babel7,要跟新一大推插件,而对于安装babel的功能就是在webpack开发中,vue中能够是用ES6的新特性: 例如ES6中的 ...
- ECMAscript6(ES6)新特性语法总结(一)
ES6/ES2015,,在ES5的基础上扩展了很多新的功能,在使用的时候要慎重,因为有一部分js代码在部分浏览器是不兼容的,但是所有写在服务器端的代码基本上都支持ES6的写法. 新特性: 一.开启严格 ...
- ES6新语法
ES6新语法概览 简介 ES6是JavaScript语言的新一代标准,加入了一些新的功能和语法,正式发布于2015年6月,亦称ES2015:该标准由ECMA(欧洲计算机制造联合会)的第39号技术专家委 ...
- ES6新语法的介绍
对于ES6新语法,阮一峰有一篇文章介绍的挺详细 http://es6.ruanyifeng.com/#docs/destructuring
- ES6新语法之let关键字;有别于传统关键字var的使用
ES6新语法于2015年发布:而我这个前端小白在17年才接触到.惭愧惭愧!!不过到目前为止,似乎只有FireFox和Chrome对ES6的支持相对良好.不过既然人家ES6已经出来了,还是要跟上技术的潮 ...
- ES6的新特性(19)——Module 的语法
Module 的语法 概述 历史上,JavaScript 一直没有模块(module)体系,无法将一个大程序拆分成互相依赖的小文件,再用简单的方法拼装起来.其他语言都有这项功能,比如 Ruby 的re ...
随机推荐
- Canal实时解析mysql binlog数据实战
一.说明 通过canal实时监听mysql binlog日志文件的变化,并将数据解析出来 二.环境准备 1.创建maven项目并修改pom.xml配置文件 <dependencies> & ...
- qbxt五一数学Day1
目录 I. 基础知识 1. 带余除法(小学) 1. 定义 2. 性质 2. 最大公约数(gcd)/ 最小公倍数(lcm) 1. 定义 2. 性质 3. 高精度 II. 矩阵及其应用 1. 定义 2. ...
- Linux 用户管理相关命令
1 sudo adduser username # 添加用户 2 sudo adduser --system username # 添加系统用户 3 sudo deluser username # 删 ...
- C#任务并行库TPL--Task应用
一.概念 TPL的核心就是任务,一个任务代表一个异步操作,该操作可以通过多种方式运行,一个任务也可以由多个任务组成. 二.应用 1.创建任务有三种方法: var t1 = new Task(() =& ...
- 【AGC】构建服务1-云函数示例
前言:上一次笔者给大家带来了AGC领域的远程配置服务的学习.这次我们再继续深化学习AGC的相关知识.在文章开始之前,再给读者简单介绍一下AGC,以免第一次来的读者不了解.所谓AGC就是AppGal ...
- GreatSQL MGR FAQ
欢迎来到 GreatSQL社区分享的MySQL技术文章,如有疑问或想学习的内容,可以在下方评论区留言,看到后会进行解答 目录 0. GreatSQL简介 1. GreatSQL的特色有哪些 2. Gr ...
- Rider调试ASP.NET Core时报thread not gc-safe的解决方法
新建了一个ASP.NET Core 5.0的Web API项目,当使用断点调试Host.CreateDefaultBuilder(args)时,进入该函数后查看中间变量的值,报错Evaluatio ...
- Docker 13 Dockerfile
参考源 https://www.bilibili.com/video/BV1og4y1q7M4?spm_id_from=333.999.0.0 https://www.bilibili.com/vid ...
- 我写的蓝宝石留言本php版 v4.5
蓝宝石留言本php版v4.5采用原生php编写,在php5.6~php7.x下调试通过.本留言本使用了utf-8编码. include/config1.php是数据库连接参数的配置文件, includ ...
- tomcat服务器和servlet的基本认识
今天下午在知乎看见了一个老哥的文章,写的是servlet写的很好,以前我对Javaweb方面的理解比较混乱今天看了这位老哥的文章后受益匪浅,知乎名叫:bravo1988 里面也有讲servlet和s ...