js 字符串转 unicode,可用来和eval等语句结合,实现代码加密、反调试。
例如,定义变量key的值为123:“var key = 123;”转化为Unicode形式为:
\u0076\u0061\u0072\u0020\u006b\u0065\u0079\u0020\u003d\u0020\u0031\u0032\u0033\u003b\u000a
如果此时用Eval执行,并用console.log输出变量key的值:
eval("\u0076\u0061\u0072\u0020\u006b\u0065\u0079\u0020\u003d\u0020\u0031\u0032\u0033\u003b\u000a");
console.log(key)
会发现:变量的值可以正常输出为123,但从代码中看不到“key”的定义,也无法通过调试找到“key”。
这样就起到了对变量名的保护。
此技巧可用于加密敏感信息相关的变量名、某些前端算法的密钥,等等。
为了方便实现这一功能,我们可以借助于工具。例如:
https://www.jshaman.com/tools/string-unicode.html

巧用这个方法,可以实现意想不到的效果,快去探索一下吧~
2577

被折叠的 条评论
为什么被折叠?



