ES6笔记总结
常用命令
- 函数的rest参数和扩展
- promise使用
- module.exports和Es6 import/export的使用
function sum(x,y,z){
let total = 0;
if(x)total+=x;
if(y)total+=y;
if(z)total+=z;
}
sum(5,"",9);
function sum2(...m){
let total = 0;
for(var i of m){
total += i;
}
console.log(`total${total}`)
}
sum2(4,8,9,10,5);
let sum3 = (...m)=>{
let total = 0;
for(var i of m){
total += i;
}
console.log(`total${total}`)
}
sum3(4,8,9,10,5);
var [x,y] = [4,8];
console.log(...[4,8])
let arr1 = [1,3];
let arr2 = [4,8];
console.log("concat:"+arr1.concat(arr2));
//[...arr1,...arr2];
let [a,b,c]="ES6";
console.log(a);//输出E
let checkLogin = function(){
return new Promise(function(resolve,reject){
let flag = document.cookie.indexOf("userId")>-1?true:false;
if(flag=true){
resolve({
status :0,
result:true
})
}else{
reject("error")
}
})
};
let getUserInfo = ()=>{
return new Promise((resolve,reject)=>{
let userInfo={
userId:"101 "
}
resolve(userInfo);
})
};
checkLogin().then((res)=>{
if(res.status == 0){
console.log("login success")
return getUserInfo();
}
}).catch((error)=>{
console. log(`error:${error}`);
}).then((res2)=>{
console.log(`userId${res2.userId}`)
})
Promeise.all([checkLogin(),getUserInfo( )]).then(([res1,res2])=>{
console.log(`result:${res1.result},result:${res2.result}`)
})
//promise
let checkLogin = function(){
return new Promise(function(resolve,reject){
let flag = document.cookie.indexOf("userId")>-1?true:false;
if(flag=true){
resolve({
status:0,
result:true
})
}else{
reject("error")
}
})
};
let getUserInfo = ()=>{
return new Promise((resolve,reject)=>{
let userInfo={
userId:"101"
}
resolve(userInfo);
})
};
checkLogin().then((res)=>{
if(res.status == 0){
console.log("login success")
return getUserInfo();
}
}).catch((error)=>{
console.log(`error:${error}`);
}).then((res2)=>{
console.log(`userId${res2.userId}`)
});
Promeise.all([checkLogin(),getUserInfo()]).then(([res1,res2])=>{
console.log(`result:${res1.result},result:${res2.result}`)
})
ES6笔记总结的更多相关文章
- ES6笔记(5)-- Generator生成器函数
系列文章 -- ES6笔记系列 接触过Ajax请求的会遇到过异步调用的问题,为了保证调用顺序的正确性,一般我们会在回调函数中调用,也有用到一些新的解决方案如Promise相关的技术. 在异步编程中,还 ...
- ES6笔记系列
ES6,即ECMAScript 6.0,ES6的第一个版本是在2015年发布的,所以又称作ECMAScript 2015 如今距ES6发布已经一年多的时间,这时候才去学,作为一个JSer,羞愧羞愧,还 ...
- ES6笔记(1) -- 环境配置支持
系列文章 -- ES6笔记系列 虽然ES6已经发布一年多了,但在各大浏览器之中的支持度还不是很理想,在这查看ES6新特性支持度 Chrome的最新版本浏览器大部分已经支持,在Node.js环境上支持度 ...
- ES6笔记(2)-- let的块级作用域
系列文章 -- ES6笔记系列 一.函数级作用域 我们都知道,在ES6以前,JS只有函数级作用域,没有块级作用域这个概念 没有块级作用域,有利有弊,利于方便自由,弊于作用域内的变量容易被共享,例如这个 ...
- ES6笔记(3)-- 解构赋值
系列文章 -- ES6笔记系列 解构赋值,即对某种结构进行解析,然后将解析出来的值赋值给相关的变量,常见的有数组.对象.字符串的解构赋值等 一.数组的解构赋值 function ids() { ret ...
- ES6笔记(4)-- Symbol类型
系列文章 -- ES6笔记系列 Symbol是什么?中文意思是标志.记号,顾名思义,它可以用了做记号. 是的,它是一种标记的方法,被ES6引入作为一种新的数据类型,表示独一无二的值. 由此,JS的数据 ...
- ES6笔记(6)-- Set、Map结构和Iterator迭代器
系列文章 -- ES6笔记系列 搞ES6的人也是够无聊,把JS弄得越来越像Java.C++,连Iterator迭代器.Set集合.Map结构都出来了,不知道说什么好... 一.简单使用 1. iter ...
- ES6笔记(7)-- Promise异步编程
系列文章 -- ES6笔记系列 很久很久以前,在做Node.js聊天室,使用MongoDB数据服务的时候就遇到了多重回调嵌套导致代码混乱的问题. JS异步编程有利有弊,Promise的出现,改善了这一 ...
- ES6 笔记汇总
ES6 笔记汇总 二.ES6基础-let和const命令 三.变量的解构赋值 四.字符串的拓展 五.正则表达式的拓展 ...将会持续更新,敬请期待
- ES6笔记2
ES6笔记2 Promise Promise 是 ES6 引入的异步编程的新解决方案,语法上是一个构造函数 一共有3种状态,pending(进行中).fulfilled(已成功)和rejected(已 ...
随机推荐
- iOS移动开发周报-第16期
iOS移动开发周报-第16期 [摘要]:本期iOS移动开发周报带来如下内容:iOS 8的新特性,敏感逻辑的保护方案,iOS绘图教程,WKWebView的使用等. 教程 <iOS 8>: ...
- Java中的class类的cast方法和asSubclass方法
一般来说cast是转型的意思,但是学java的时间也不短了,class类居然还有cast这个方法,这里来学习一下这个cast有何用. 第一次看到这个cast是在Spring的源码中, spring-f ...
- datatables参数配置详解
//@translator codepiano //@blog codepiano //@email codepiano.li@gmail.com //尝试着翻译了一下,难免有错误的地方,欢迎发邮件告 ...
- Oracle中如何进行进制转换(2进制,10进制,16进制)
1.16进制转换为10进制 可以通过to_number函数实现 SQL> select to_number('19f','xxx') from dual; TO_NUMBER('19F','XX ...
- [不好分类]iphone手机激活错误的处理过程
同事一台iphone 6s手机,重启后显示无法激活.(欢迎访问viphhs,欢迎转载.https://www.cnblogs.com/viphhs) 百度后尝试更换了手机卡,重新连接wifi,都不能恢 ...
- BitMapFactory.decodeFile 总是返回NULL的原因之一
之前碰到过,顺便记录下来,如果出现这种情况,首先看看是否有对这个文件的读权限.
- 最简单的基于FFMPEG的Helloworld程序
===================================================== 最简单的基于FFmpeg的视频播放器系列文章列表: 100行代码实现最简单的基于FFMPEG ...
- windows64位安装mysql-5.7.12,图文
linux下安装mysql教程一大片,我就不说了,再此说下windows 下如何安装这个5.7版本,并且有些坑已踩! 一:进入mysql下载地址:http://www.mysql.com/downlo ...
- mediaxyz访谈录:ffmpeg的码率控制
mediaxyz是一位研究ffmpeg有三年的高人了,这几天一直在折腾ffmpeg中的x264,就是不知道该如何控制码率,主要是参数太多,也不知道该如何设置,在 google上search了一下,这方 ...
- 细谈HTML解析模块
细谈HTML解析模块 Html在网页中所占的位置,用一个简单直观的图给展示一下: