前端进阶之旅前端进阶之旅
基础篇
进阶篇
高频篇
精选篇
手写篇
原理篇
面经篇
自检篇
每日一题
  • 综合
    • 综合题型
    • 其他问题
    • 设计模式
    • 思维导图
    • 学习路线
  • 前端基础
    • HTTP
    • 浏览器
    • 计算机基础
  • 进阶学习
    • NPM工作流
    • Docker
    • Canvas
    • Node学习指南
    • 前端综合文章
  • 其他
    • Handbook
    • 职场话题
    • CSS可视化
小程序题库
公众号动态
博客动态
开发者导航
基础篇
进阶篇
高频篇
精选篇
手写篇
原理篇
面经篇
自检篇
每日一题
  • 综合
    • 综合题型
    • 其他问题
    • 设计模式
    • 思维导图
    • 学习路线
  • 前端基础
    • HTTP
    • 浏览器
    • 计算机基础
  • 进阶学习
    • NPM工作流
    • Docker
    • Canvas
    • Node学习指南
    • 前端综合文章
  • 其他
    • Handbook
    • 职场话题
    • CSS可视化
小程序题库
公众号动态
博客动态
开发者导航

ECMAScript6回顾

首页
2017-10-21 20:20:43
Front-End
JavaScriptES6
  • 整理于互联网,整理最常用的部分,完善中…
  • 参考资料: http://es6.ruanyifeng.com

# 第一部分:扩展

# 1.1、let和const

  • const声明一个只读的常量。一旦声明,常量的值就不能改变
  • let不允许在相同作用域内,重复声明同一个变量
  • for循环的计数器,就很合适使用let命令
  • 不存在变量提升
  • 会创建块级作用域

# 1.2、变量的解构赋值

数组解构赋值应用场景

  • 变量交换
[a,b] = [b,a]
@前端进阶之旅: 代码已经复制到剪贴板
  • 选择性接收某些变量
function fn() {
    return [1,2,3,4,5]
}

[a,,,b] = fn();
// a = 1,b = 4
@前端进阶之旅: 代码已经复制到剪贴板
  • 不确定返回数组长度,只关心第一个
[a,...b] = [1,2,3,4,5]
@前端进阶之旅: 代码已经复制到剪贴板

对象解构赋值场景

  • 服务端返回的json解构应用
let metaData = {
    title: "hah",
    test: [
        {
            title:"poetries",
            desc: "test_data"
        }
    ]
}

let {title:esTitle,test:[{title:cnTitle,desc:cnDesc}]} = metaData;
fe
  • 第一部分:扩展
    • 1.1、let和const
    • 1.2、变量的解构赋值
    • 1.3、字符串扩展
    • 1.4、数值扩展
    • 1.5、数组扩展
    • 1.6、对象扩展
    • 1.7、函数扩展
  • 第二部分:新增
    • 2.1、Symbol
    • 2.2、Proxy
    • 2.3、Reflect
    • 2.4、Set和Map
    • 2.5、Promise
    • 2.6、Generator
    • 2.7、Class
    • 2.8、Module

← Mocha+Chai+Istanbul单元测试浅析JSON.stringify →