前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >JS中这样定义变量,你见过吗?

JS中这样定义变量,你见过吗?

原创
作者头像
用户8703799
发布2024-10-09 12:26:38
发布2024-10-09 12:26:38
1120
举报
文章被收录于专栏:javascript技术javascript技术

一般情况下,在JS中定义变量,是使用var、let、const

比如:var abc =1;

但如果你不希望别人看到你定义了一个变量abc,该怎么办呢?

可以这样写:this["abc"]=1;

这样便也定义了一个变量abc。

啊?能这么写吗?能!不信?测试运行一下就知道了。

但这还是看到了abc字符串,也看到了赋值的内容是数字1。有没有办法更隐藏一些呢?

有,还可以用JShaman对这一行代码进行混淆。

混淆之后,this["abc"]=1;会变成:

this["\u0061\u0062\u0063\u0064"]=0x3ba17^0x3ba16;

这时,如果进行console.log(abc)alert(abc),会看到变量abc的值1被输出了。

但在这行代码中,一眼看去,即不存在变量abc,也没有数值1。

是不是很有意思呢?

这样的JS编程技巧,你学会了吗?

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档