ES6的新知识点
一、变量
原有变量:
var的缺点:
- 1.可以重复声明
- 2.无法限制修改
- 3.没有块级作用域
新增变量:
let :不能重复声明,变量-可以修改,块级作用域
const:不能重复声明,变量-不可以修改,块级作用域
二、箭头函数
原函数:
var func = function(args){
alert(“abc”);
};
现箭头函数:
var func = (args)=> {
alert(“abc”);
};
简写规则:
()——只有一个参数
{ } ——只有一个return
所以上述函数还可以写为:
var func = args => alert(“abc”);
三、函数的参数
function(a,b,...args)
...args 可以 替代所有想写的不想写的参数
四、解构赋值
1.左右两边结构必须一样
2.右边必须定义
3.声明和赋值不能分开(必须在一句话里完成)
let [a,b,c] = [12,5,8];
let {a,b,c} = {a: 12, b: 5, c: 8};
五、数组新操作
map 映射
reduce 汇总
filter 过滤器
forEach 循环(迭代)
六、字符串
1.新方法
- startsWith
- endsWith
2.字符串模板
- 直接可以把元素嵌套在字符串里 $(元素)
- 可以折行
七、json
1.json对象
- JSON.stringify
- JSON.parse
2.简写
json = {
url : url,
show : function(){ }
}
简写为:
json = {
url,
show(){ }
}
json标准写法:只能用双引号;属性必须用双引号包起来
八、promise
有了promise之后的异步:
Promise.all([$.ajax(), $.ajax()]).then(results=>{
//success
}, err=>{
//error
});
九、generator
可以暂停函数的函数
//创建generator函数
function *func() {
//do sth A
yield;
//do sth B
}
//调用
let genObj = func();
genObg.next(); //do A
genObg.next(); //do B
yield :可以传参,也可以返回
异步操作:
1.回调
2.promise
3.generator(runner.js)
runner( function *() {
let data1 = yield $.ajax({url: xxx, dataType : 'json'});
let data2 = yield $.ajax({url: xxx, dataType : 'json'});
let data3 = yield $.ajax({url: xxx, dataType : 'json'});
});
Promise——适合做没有逻辑的异步
generator——适合做逻辑性异步
ES6的新知识点的更多相关文章
- es6的一些知识点
es6的一些知识点 前言:es6(ECMAscript2015)标准 let.const.var的一些区别 let.const 块级作用域.全局作用域.函数作用域 var 全局作用域.函数作用域 变量 ...
- 看es6 字符串新方法有感
'x'.repeat(3) // "xxx" 'hello'.repeat(2) // "hellohello" 'na'.repeat(0) // " ...
- ES6常用新特性
https://segmentfault.com/a/1190000011976770?share_user=1030000010776722 该文章为转载文章!仅个人喜好收藏文章! 1.前言 前几天 ...
- 漫谈数组去重复方法(亮点是ES6的新API)
方法1: 利用遍历的思想来进行. <!DOCTYPE html><html lang="en"><head> <meta charset= ...
- ES6的新方法实现数组去重
ES6里新添加了两个很好用的东西,set和Array.from. set是一种新的数据结构,它可以接收一个数组或者是类数组对象,自动去重其中的重复项目. 在这我们可以看见,重复的项目已经被去掉了,包括 ...
- JavaScript ES6 数组新方法 学习随笔
JavaScript ES6 数组新方法 学习随笔 新建数组 var arr = [1, 2, 2, 3, 4] includes 方法 includes 查找数组有无该参数 有返回true var ...
- ES6 && ECMAScript2015 新特性
ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准.因为当前版本的ES6是在2015年发布的,所以又称ECMAScript 2015. 也就是说,ES6就是ES201 ...
- ES6/ES2015常用知识点和概念
越来越多的开源库开始使用ES2015来构建代码了,大家知道ES6=ES2015,ES6在2015年被ECMAScript标准化组织approve,各大浏览器厂商要完全支持ES6的强大功能还须一些时日, ...
- 【系统学习ES6】新专题发布
我要发免费专题了,向下看 公众号和博客都有一阵没更新了,丢了一些粉儿,但是也很庆幸,时时还会有人关注.我并不是什么专业讲师,文章都是利用业余时间手工原创.在这里非常感谢各位的支持和厚爱. 这个月开始, ...
随机推荐
- XMPP使用tls 和sasl登录
转自:http://ycool.com/post/xc98m5k 名词解释 TLS:安全传输层协议 TLS:Transport Layer Security 名词: 安全传输层协议(TLS)用于在两个 ...
- ${__BeanShell(${SCRIPT})}
通过将变量名称括在' $ { '和' } '中来引用测试元素中的变量. 函数以相同的方式引用,但按照惯例,函数名称以“ __ ” 开头,以避免与用户值名称冲突*.有些函数使用参数来配置它们,这些函数用 ...
- python的builtins模块
builtins模块详解 1.简介 builtins是python的内建模块,所谓内建模块就是你在使用时不需要import,在python启 动后,在没有执行程序员编写的任何代码前,python会加载 ...
- 解决NTFS文件系统下的文件/文件夹属性中没有安全选项卡的问题
注册表项: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer 键:NoSecurityTab ...
- Kamailio
http://www.kamailio.org/wiki/cookbooks/4.1.x/core IMS 支持接口 MSC接口,信令:ISUP over IP和SIP, 用户面: rtp协议 PCR ...
- 配置mybatis解决log4j未正常打印sql的问题
在mybatis-config.xml中增加配置: <settings> <setting name="logImpl" value="STDOUT_L ...
- jqueyr validtion的使用
江北机场对validtion的扩展 <script type="text/javascript"> $.validator.setDefaults({ /*关闭键盘输入 ...
- JSONP原理及简单实现
在web2.0时代,熟练的使用ajax是每个前端攻城师必备的技能.然而由于受到浏览器的限制,ajax不允许跨域通信. JSONP就是就是目前主流的实现跨域通信的解决方案. 虽然在在jquery中,我们 ...
- idea maven install 卡住,无报错排查。
今天使用idea打包,执行install,看控制台日志,卡主了(意思是日志不继续在控制台输打印了,卡主了,也看不到错误),也没有报错,然后进行排查. 进入dos命令,进入到项目的根目录,使用 运行 m ...
- 关于Map集合的遍历总结
Map集合的遍历经常遇到,今天在这里总结一下Map集合遍历的几种方式: public static void main(String[] args){ Map<String,String> ...