es6学习视频总结

es6 兼容性
1.在线编译(延迟)

引入browser.js
<script type="text/babel">
  es6写法
</script>

2.提前编译

node 环境
npm i @babel/core   -----核心库
npm i @babel/parset-env -----预设,预先设置好的配置 是否编译一些es6的写法
npm i @babel/cli    -----命令

npm i @babel/polyfill    -----指令(兼容低版本浏览器 填充)

1.变量(let const)

1. 不可以重复声明 
2. 可以限制修改 
3. 有块级作用域

2.函数

箭头函数,声明的时候可以确定this
(param)=>{return x}
只有一个参数时    param=>{return x}
只有一个返回值时  (param)=x
两者都满足时      param=>x

3.解构赋值

左右两边结构相等
右边必须是个类型
声明跟赋值一步操作

let {a,b}={a:1,b:1}
let [a,b]=[1,2]

4.数组 (map,reduce,filter,forEach)

5.字符串(字符串模板 ``,startsWith() endsWith())

6.面向对象(class extennds constructor super )

class Partent {
  constructor(name,age){
    this.name=name
    this.age=age
  }
  getNaem(){
    return this.name
  }
  getAge(){
    return this.age
  }
}

class Children extends Partent {
  constructor(name,age,sex){
    super(name,age)
    this.sex=sex
  }
  getSex(){
    return sex===2?'女':'男'
  }
}

7.异步

Promise
let p=new Promise((res,rej)=>{})
p.then((res)=>{})
p.catch((e)=>{})

generator
function *  taxi(){
  let a=3
  console.log(a)
  yield
  let b=4
  console.log(b)
}
let car=taxi()
car.next()

async await( await 返回一个 Promise成功后的结果 才会继续访问)
async function taxi(){
let a=2
let result=await new Promise((resolve, reject) => {
      setTimeout(() => {resolve(1),a=3}, 2000)
    })
console.log(result)
console.log(a)
}

8.模块化

语言支持,但浏览器不支持,最常用的编译webpack
定义
export function(){}
export 变量
export class
export obj
export defalut xx (默认导出一个)

使用
impoort xx from xx (引入一个) 
import {a,b} from xx (选择性引入) 
import * as x from xx (引入所有)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值