简单介绍ES6的内容
树图思维导图提供 互联网ES6思维导图 在线思维导图免费制作,点击“编辑”按钮,可对 互联网ES6思维导图 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:4f074163a6f90c43bb5b9864ec638b8c
ES6思维导图模板大纲
let
const
用es5实现const,通过修改属性描符writable:
writable属性不可以被修改
configurable属性不可被删除,属性描述符不可被修改
enumerable属性不可被遍历
value属性的值
set
get
vue兼容到ie8,因为ie8不支持defineProperty
Object.defineProperty(obj,'a',{writable:false})
函数内的块级作用域:闭包
作用:实现模块化
缺点:造成内存泄漏
箭头函数,this指向定义时的作用域
普通函数,this指向调用时的作用域
判断是否是数组:Array.isArray
把伪数组转化为数组:Array.from()||[...]Array.prototype.slice.call()
对象的解构:let{callback}=this.props
对象的合并:Object.assign({},{a:1},{b:2})
最简单的深拷贝:JSON.strigify==>JSON.parse()只能处理对象,处理不了数组
三个状态
初始化状态:pennding
完成状态:resolved
拒绝状态:rejected
二个参数
由pendding变为resolved时调用resolve方法
由pennding变为rejected时调用reject方法
四个方法
把promise合在一起:Promise.all()
任意一个promise完成即可:Promise.race()
生成一个状态立刻由pennding改为resolved的promise:Promise.resolve()
生成一个状态立刻由pennding改为reject的promise:Promise.rejected()
错误捕捉:catch
链式调用,只需直接返回常量即可
原生实现promise:利用setTimeout把同步操作变成异步操作
异步函数:会阻塞代码的执行
awiat一个promise这个表达式的执行结果就是resolve的参数
错误捕获:try/catch捕获错误
异步函数,前面带个*
用yield修饰异步操作
第一次调用,返回一个迭代器
调用迭代器的next方法,继续往下执行,遇到yield语句或者return结束
yiled表达式的返回值,下一次调用next传进来的参数
面向对象OOP(Object Oriented Programing)
es6 class
特点
重载
抽象
继承
封装
es5函数+原型链
继承:extends
js只有单继承
super关键字
super(),作为函数的时候,实现继承,拷贝父类,返回子类的this
super.render(),作为对象的时候指向父类,this指向子类
静态属性和静态方法,不需要实例化即可调用
静态属性写在类的外面
静态方法用static修饰
模块的导入/导出
export function getData(){}
import {getData} from '…'
export default
import getData
export * from '…'
require.js
两个参数,define
数组:依赖列表
函数:注入前面的依赖作为函数参数
common.js
导出:module.exports
导入:require
树图思维导图提供 《数字教育平台开发项目策划》 在线思维导图免费制作,点击“编辑”按钮,可对 《数字教育平台开发项目策划》 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:d6437326e3e07ecf1e5e178ba84d0100
树图思维导图提供 母婴大健康行业互联网展现推广方案1.0 在线思维导图免费制作,点击“编辑”按钮,可对 母婴大健康行业互联网展现推广方案1.0 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:e848be5cfe3012b9c73b8c363c1cba92