xbo*_*und 155 javascript node.js
最近一位同事展示了这段 JavaScript 代码:
greet = "?".toString.bind("hello world!")
Run Code Online (Sandbox Code Playgroud)
如果您将其粘贴到开发者控制台中并执行,它将打印“Hello, World!” 信息:
>> console.log(greet())
hello, world!
Run Code Online (Sandbox Code Playgroud)
我发现的另一个有趣的事情是,如果您将相同的greet代码粘贴到Node.js REPL 中,它会自动将其转换为“可读”格式。
这是如何运作的?为什么这种行为在浏览器中是可能的,为什么 Node.js 会自动格式化它?
dec*_*eze 176
实际代码是:
greet = "...".toString.bind("hello world!")
Run Code Online (Sandbox Code Playgroud)
其中...字符串文字中的 是 bytes E2 80 AE,它是从右到左覆盖的 Unicode 字符,这会导致其后的所有内容反向显示。它用于编写从右到左的语言,如阿拉伯语或希伯来语。
fee*_*edy 76
您有反转文本的隐藏字符。在这里你可以看到原始字符:https : //www.soscisurvey.de/tools/view-chars.php