其他分享
首页 > 其他分享> > ECMAScript6学习简易笔记(上)

ECMAScript6学习简易笔记(上)

作者:互联网

一、ECMAScript简介

  es6是javascript的最新版本

  2015年发布的es6以及以后的各个小版本统称为es6

·  ES是JS的标准,JS是ES的实现

  ES6是ES5的语法糖,更为简标准化

二、let和const

  let没有变量提升

  let不允许变量的重复定义

  let属于块级作用域

  let定义的变量有暂时性死区

  let定义的变量不会变成顶级对象的属性

  const定义常量,必须在定义的时候初始化  (具有let的优点)

三、字符串扩展

  使用反引号来定义字符串

  新增方法  includes()  padStart(length,str)  trim()

四、变量解构赋值

  ES6中允许按照一定模式来解析数组,对象,赋值给变量。这种模式为解构赋值

  数组是一种有序的结构在解析数据的时候,按顺序来解析赋值

  对象是无序的哈希结构,解构时需要借助属性名来解构

  诀窍 保证=两边的模式一致 [],{}  将=右边的内容解析赋值左边的变量

五、对象扩展

  简写  若对象的属性名与属性值的变量名一致,则可以简化

  在es6中可以通过[]表达式的形式来为对象添加属性([]内传递变量)

  Object.keys()    Object.values()

六、函数扩展

·  箭头函数

  箭头函数内this指向不能通过call,apply,bind改变

  箭头函数内this指向箭头函数所处的上下文对象的作用域

  箭头函数常用于回调函数  其他场景慎用

  在es6中允许函数在形参位置添加默认值

  ...运算符

  扩展运算符(spread)  可以取出集合结构中的数据

  rest参数  可以接收多个参数

七、symbol

  symbol是一种数据类型  表示独一无二的值

  常用来模拟对象私有属性方法 常用于框架,js内置函数和对象中

八、set和map

  Set和Map是两种集合结构

  set类似于数组,但是成员的值都是唯一的,没有重复的值

  set常见方法  add()delete()clear()forEach()size

  set可用于数组去重

  map类似于对象,也是键值对的集合,但是键的范围不再限于字符串,各种类型的值都可以使用

  map常见方法

  set(key,value)设置    get(key)取值

  delete()  clear()  forEach()  keys()  values()  size

九、Iterator和Generator

  iterator是一种接口机制为各种数据结构提供统一的访问机制

  只要拥有iterator遍历器,就可以使用for...of遍历

  Array  set  map原生具备iterator接口

  若希望对象使用for...of遍历,则需要为对象部署iterator接口

  Generator 函数是 ES6 提供的一种异步编程解决方案

  Generator函数是一个状态机, 可控制函数执行过程

  可暂停函数(惰性求值), 内部yield可暂停,外部调用next方法可启动。每次返回的是yield后的表达式结果

十、Promise

  promise是一种异步编程的解决方案

  promise里面通常保存了未来才会结束的事件

  有了promis对象,就可以将异步操作以同步流程表达出来

  避免了回调地狱

  promise有三种用法  pending 进行中  fullfillde 成功(resolved)  reject 失败

  promise状态有两种改变方式  pending----resolve  pending----reject

  then方法可以接收两个参数  promise成功状态回调  promise失败状态回调

  catch方法 可以捕获代码中的异常  可以接收promise失败状态回调

  then()返回值为promise对象,可以通过多个then链式调用,来完成promise的顺序

  then成功回调返回值  返回普通数据类型传递给下一个then

               返回一个promise会决定下一个then的状态

  promise all()将多个promise实例包装为一个新的promise  promise all()的状态取决于所有promise的状态

  一个promisre失败则promise all()失败    都成功则promise all()成功

 

 

标签:ECMAScript6,es6,set,函数,对象,笔记,简易,let,promise
来源: https://www.cnblogs.com/xwycnblogs/p/15699905.html