一、变量

原有变量:

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的新知识点的更多相关文章

  1. es6的一些知识点

    es6的一些知识点 前言:es6(ECMAscript2015)标准 let.const.var的一些区别 let.const 块级作用域.全局作用域.函数作用域 var 全局作用域.函数作用域 变量 ...

  2. 看es6 字符串新方法有感

    'x'.repeat(3) // "xxx" 'hello'.repeat(2) // "hellohello" 'na'.repeat(0) // " ...

  3. ES6常用新特性

    https://segmentfault.com/a/1190000011976770?share_user=1030000010776722 该文章为转载文章!仅个人喜好收藏文章! 1.前言 前几天 ...

  4. 漫谈数组去重复方法(亮点是ES6的新API)

    方法1: 利用遍历的思想来进行. <!DOCTYPE html><html lang="en"><head> <meta charset= ...

  5. ES6的新方法实现数组去重

    ES6里新添加了两个很好用的东西,set和Array.from. set是一种新的数据结构,它可以接收一个数组或者是类数组对象,自动去重其中的重复项目. 在这我们可以看见,重复的项目已经被去掉了,包括 ...

  6. JavaScript ES6 数组新方法 学习随笔

    JavaScript ES6 数组新方法 学习随笔 新建数组 var arr = [1, 2, 2, 3, 4] includes 方法 includes 查找数组有无该参数 有返回true var ...

  7. ES6 &amp;&amp; ECMAScript2015 新特性

      ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准.因为当前版本的ES6是在2015年发布的,所以又称ECMAScript 2015. 也就是说,ES6就是ES201 ...

  8. ES6/ES2015常用知识点和概念

    越来越多的开源库开始使用ES2015来构建代码了,大家知道ES6=ES2015,ES6在2015年被ECMAScript标准化组织approve,各大浏览器厂商要完全支持ES6的强大功能还须一些时日, ...

  9. 有关于canvas几个新知识点

    对于canvas的初学者来说,以下几点应该是不知道的知识点: 1.canvas有兼容IE6/7/8的脚本文件 下载地址:https://github.com/arv/explorercanvas 2. ...

随机推荐

  1. 制作自己的MVC框架(二)——启动

    自己写了个框架,取名为“PrimusPHP”,就3个文件夹,log中是日志文件,会自动生成. app中就是控制器和视图,public中是入口文件和静态资源,library中既有框架的核心类,还有工具类 ...

  2. C#:泛型(Generic)

    前言:  此系列都为个人对C#的回顾,属于个人理解,新司机可参考.求老司机指点.如果有什么问题或不同见解,欢迎大家与我沟通! 目录:  泛型是什么 泛型的好处及用途 如何声明使用泛型 泛型类 泛型方法 ...

  3. gradle基础的build文件模板_tomcat

    group '组织名' version '版本号' /* 支持的插件 */ apply plugin: 'java' // 项目基础变成语言支持为java apply plugin: 'war' // ...

  4. CSS属性前的 -webkit, -moz,-ms,-o

    -moz-对应 Firefox, -webkit-对应 Safari and Chrome-o- for Opera-ms- for Internet Explorer(microsoft) 在CSS ...

  5. vb.net Linq 筛选(像 select distinct) DateTable 日期数据中的年份

    Private Sub initDDLByYear(ByVal dt As DataTable) ddlByYear.Items.Clear() ddlByYear.Items.Add(") ...

  6. 使用highlight.js高亮你的代码

    在逛别人的博客的时候,看见别人的代码的例子使用了高亮的语法,无论是java,js还是php等等语言,都会自动的对关键字进行高亮. 于是在前几天自己写了一个博客,遇到code时,自然就想到了别人网站如何 ...

  7. js模板引擎--artTemplate

    js模板引擎--artTemplate 以前研究过一段时间的handlebars,但因为其渲染性能略逊于腾讯的artTemplate(在artTemplate的GitHub官网上有推荐的性能测试地址) ...

  8. mysql出现Waiting for table metadata lock的原因及解决方案

    最近经常遇到mysql数据库死锁,郁闷死, show processlist; 时 Waiting for table metadata lock 能一直锁很久 下面有官网的一段话,可以理解下 htt ...

  9. DataGuard开启延时应用的测试

    DataGuard开启延时应用的测试 实验环境:RHEL 6.5 + Oracle 11.2.0.4 GI.DB + Primary RAC(2 nodes)+ Standby RAC(2 nodes ...

  10. 微信小程序中-折线图

    echarts配置项太多了,还是一点点积累吧~~~~~ 当然前提条件还是得老老实实看echarts官方文档 :https://echarts.baidu.com/ 今天主要就介绍下我在工作中通过ech ...