向大家请教一段JS代码的意思

2025-02-25 21:07:35
推荐回答(1个)
回答1:

此代码作用是替换页面上所有href包含'/cdn-cgi/l/email-protection'的a标签为其真实邮箱地址
例如有个被保护的地址为
'/cdn-cgi/l/email-protection#71121003141403311a140210051e5f121e1c'
首先得到#後面的部分
'71121003141403311a140210051e5f121e1c'
以最头两个字符的在16进制下的值作为密钥
即0x71 == 113
然後对剩下的字符两两分组, 对每组视为16进制数字, 把它和密钥做异或的结果转成16进制保存, 并使用%对结果分割, 得到
'%63%61%72%65%65%72%40%6b%65%73%61%74%6f%2e%63%6f%6d'
之後调用decodeURIComponent, 得到真实地址
career@kesato.com
最後把结果前面加上'mailto:'赋值到href上