ES6必知,速看!(2)

part 1 类
特点:用class 声明,本质是function,类名建议大写开头
为了更好的学习类,首先要掌握以下单词:

constructor 构造器 super 超级 extends 继承 new 实例化

实例:
class Cat extends Animal{ constructor(name,color){ super(name); this.color = color; } say(){} } var c1 = new Cat("小猫咪","五彩斑斓的黑")

part 2 模块化
script标签的type类型更改为module

1.导出 导出一个
export {name}

导出多个
export {name,fun}

导出默认
export default Cat

2.导入
import {name} from url import {name,fun} from url

导入默认
import Cat from url

合并默认
import Cat,{name,fun} from url

导入所有 as关键字
import * as utils from url

文件打开必须是http协议,不能是 D: C: file协议
prat 3 可迭代对象
可以被for of遍历
1.set集合 set集合特点就是不重复
初始化
var s1 = new Set([1,1,2])

数组去重
var arr = Array.from(s);

利用set 特性去重
arr = [... new Set(arr)]

常用方法:
add 添加 delete 删除 clear 清空 has 检查是否有 size长度

2.Map 图 类似对象
特点:键可以是任意类型
初始化:
new Map([["zql",20], ["mumu",30], [8,200]])

方法
set 添加 get获取 has 检测 size 长度 delete 删除 clear清空

3. for of遍历
keys() 键集合 values() 值集合 enteries() 键与值集合

实例
for(let v of arr){ console.log(v); }

还有String 字符串,Array 数组
part 4 promise
promise 承诺 reslove 完成解决 reject拒绝兑现

作用:
1.延期任务解决方案(promise|回调函数)
2.异步操作同步执行(顺序执行)
var p = new Promise(function(reslove,reject){} p.then(function(){},function(){})

2s 后对控制台说 其实我观察你
3s 后对控制台说 很久了
5s 后对控制台说 我很中意你啊
function say1(){ return new Promise(function(reslove,reject){ setTimeout(function(){ console.log("其实我观察你"); reslove(); },2000) }) } say1() .then(say2) .then(say3);

【ES6必知,速看!(2)】1.获取当前的地址
2.获取当前的天气(用到地址)
地址https://apis.map.qq.com/ws/lo...
天气http://wis.qq.com/weather/com...|forecast_24h|air&source=pc&province=${data.province}&city=${data.city}
getLocation() .then(getWeather)

    推荐阅读