一、代理模式
用一个中间层去给实际要干的事情做一个封装,作为补充。
列表展示图片时,加载时给一个loading的图片,加载出来了再将真实图片展示出来。
接口请求时判断一下参数如果相同直接读取缓存,如果没有缓存采取请求接口
二、适配器模式
对不兼容的部分进行适配,在不改变现有数据结构的前提下,通过适配器连接
const obj = {
0: 'a',
1: 'b',
2: 'c'
}
// 适配器:将对象转为数组
function arrayAdapter(data) {
if (typeof data !== 'object') return []
if (Object.prototype.toString.call(data) === '[object Array]')
return data
const arr = []
for (const key in data) {
arr.push(data[key])
}
return arr
}
const res = arrayAdapter(obj)
console.log(res)