var data1 = ""; var data2 = ""; var okData = ""; var map = { A: "氢", B: "氦", C: "锂", D: "铍", E: "硼", F: "碳", G: "氮", H: "氧", I: "氟", J: "氖", K: "钠", L: "镁", M: "铝", N: "硅", O: "磷", P: "硫", Q: "氯", R: "氩", S: "钾", T: "钙", U: "钪", V: "钛", W: "钒", X: "铬", Y: "锰", Z: "铁", a: "钴", b: "镍", c: "铜", d: "锌", e: "镓", f: "锗", g: "砷", h: "硒", i: "溴", j: "氪", k: "铷", l: "锶", m: "钇", n: "锆", o: "铌", p: "钼", q: "锝", r: "钌", s: "铑", t: "钯", u: "银", v: "镉", w: "铟", x: "锡", y: "锑", z: "碲", 0: "碘", 1: "氙", 2: "铯", 3: "钡", 4: "镧", 5: "铈", 6: "镨", 7: "钕", 8: "钷", 9: "钐", "+": "加", "/": "杠", "=": "等", }; var rmap = {}; function writeLocal() { json = `{"data1": "${data1}", "data2": "${data2}"}`; localStorage.emojidata1 = json; document.getElementById("data1").value = data1; document.getElementById("data2").value = data2; } function readLocal() { json = localStorage.emojidata1; if (json != null) { json = JSON.parse(json); } else { json = null; } // console.log(json); return json; } function onLoad() { killDevTool(); document.getElementById("updateTime").innerText = "2021-04-18 更新"; localData = readLocal(); if (localData != null) { data1 = localData.data1; data2 = localData.data2; document.getElementById("data1").value = data1; document.getElementById("data2").value = data2; } else { writeLocal(); } } function doEncode() { data1 = document.getElementById("data1").value; data1 = data1.replace(/\r/g, " ").replace("/\t/g", " "); let wordArray = CryptoJS.enc.Utf8.parse(data1); let base64 = CryptoJS.enc.Base64.stringify(wordArray); console.log(base64); let list = base64.split(""); let new_list = []; list.forEach((item) => { new_list.push(map[item]); }); data2 = new_list.join(""); document.getElementById("data2").value = data2; writeLocal(); } function doDecode() { let valid = []; // 转换map for (let key in map) { let value = map[key]; [value, key] = [key, value]; rmap[key] = value; } // 检查输入字符是否合法 for (let key in map) { valid.push(map[key]); } data1 = document.getElementById("data1").value; let list = data1.split(""); let new_list = []; for (i in list) { if (valid.indexOf(list[i]) > -1) { new_list.push(rmap[list[i]]); } else { alert("#1 中的 " + list[i] + " 不在周期表中"); break; } } let str = new_list.join(""); console.log(str); try { str = CryptoJS.enc.Base64.parse(str); data2 = CryptoJS.enc.Utf8.stringify(str); } catch (err) { alert(err.message + "\n检查 #1 解码数据"); data2 = ""; } if (data2.length < 1) { data1 = ""; data2 = ""; document.getElementById("data1").value = data1; document.getElementById("data2").value = data2; } writeLocal(); } function copy() { document.getElementById("data2").select(); document.execCommand("copy"); var btn3 = document.getElementById("copy"); btn3.innerHTML = "复制成功..."; setTimeout(() => { btn3.innerHTML = "拷贝 #2 内容"; }, 1500); } function clearText() { data1 = ""; data2 = ""; document.getElementById("data1").value = data1; document.getElementById("data2").value = data2; writeLocal(); } function killDevTool() { let text = "

本页面禁止使用开发者工具
DevTools are forbidden on this Page.

"; let obj = new Image(); Object.defineProperty(obj, "id", { get: function () { document.write(text); }, }); console.log(obj); }