javascript - 没有函数调用的混淆代码

标签 javascript obfuscation

我见过仅使用运算符和 "" 来执行复杂字符串操作的代码示例。基本上,想法是像 ((+"+")+"")[+""] 这样的东西给你一个字母 N 等。我忘了我在哪里找到了,但我没有找到合适的谷歌关键字。有人手边有链接吗?

最佳答案

这里基本上使用了两个主要概念:

  1. 用字符串制作Number,即Number(str),快捷方式是+str
  2. 字符串化数值,即String(n),快捷方式是n+""

因此,如果我们仔细研究这个表达式,我们会看到:

+"+"     === NaN
NaN + "" === "NaN"
+""      === 0
"NaN"[0] === "N"

您可以用相同的方式在 JavaScript 中做很多事情。以下问题提供了一个有趣的例子:What are JavaScript's builtin strings?

关于javascript - 没有函数调用的混淆代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16273744/

相关文章:

javascript - 我需要卡住 html 表格中的顶行

javascript - 为什么清除 Canvas 元素并将其放回原处会出现故障?

javascript - JavaScript 中重复元素的独特排列

php - 从 html 源中删除所有换行符

字符串的 C++ SHA1 保存到文件 Xcode

javascript - 每个表格单元格仅允许一个查询结果

javascript - 从 window.onbeforeunload 中排除 DIV 内的点击

javascript - 在 JavaScript 中如何说没有字符或数字的 "love"?

c - 线性反馈移位寄存器解释

c++ - 如何混淆/反混淆整数属性?