寫本地存儲功能localstorage
window.onbeforeunload = () => {
//localStorage只能存儲字符串购笆,所以先把hashMap轉(zhuǎn)化為字符串,運用到的API是 JSON.stringify()
const string = JSON.stringify(hashMap);
//localStorage是個全局變量
localStorage.setItem("x", string); //在本地的存儲里面設(shè)置一個x谬以,里面存放這個字符串
};
需要注意的是:localStorage只能存儲字符串,hashmap是一個數(shù)組由桌,存儲時需要將其轉(zhuǎn)化為字符串为黎,這里面用到的API是 JSON.stringify()
序列化
讀出來的時候需要將其恢復(fù)成對象
const x = localStorage.getItem("x");
const xObject = JSON.parse(x);
用到JSON.parse()
反序列化
監(jiān)聽
在寫鍵盤監(jiān)聽事件的時候出現(xiàn)的bug是,在搜索框輸入英文依然會觸發(fā)事件跳轉(zhuǎn)行您,所以需要在搜索框處寫上一個阻止事件冒泡铭乾,使其不會觸發(fā)該事件
$(document).on("keypress", (e) => {
const { key } = e;
console.log(key);
for (let i = 0; i < hashMap.length; i++) {
if (hashMap[i].logo.toLowerCase() === key) {
window.open(hashMap[i].url);
}
}
});
$input.on("keypress", (e) => {
e.stopPropagation();
});
一些API
一些API
window.prompt("請問你要添加的網(wǎng)址是什么"); //用prompt這個全局方法來問用戶
toLowerCase()小寫
toUpperCase()大寫