学习采用静态方法封装localStorage。
类相当于实例的原型,所有在类中定义的方法,都会被实例继承。如果在一个方法前,加上static关键字,就表示该方法不会被实例继承,而是直接通过类来调用,这就称为“静态方法”
class storage{
static set(key,value){
if(typeof value === 'object'){ //如果value是对象的话
vaule = JSON.stringify(value); //进行系列化对象,即把对象的类型转化为字符串类型
}
window.localStorage.setItem(key,value)
}
static get(key){
const value = window.localStorage.getItem(key);
try{
return JSON.parse(value); //将JSON字符串转换为对象,若不是JSON字符串则报错
} catch (err){ //捕捉错误
return value; //返回value值
}
}
static remove(key){
window.localStorage.removeItem(key);
}
static clear(){
window.localStorage.clear();
}
}
调用方法:如果调用类中的某一方法,例如get则为
storage.get(key)
父类的静态方法可以被子类继承。
class getStorage extends storage{}
getStorage.get(key)
这里的getStorage.get(key)也是可以取到值。