cuốn sách gpt4 ai đã làm

javascript - 为什么 (![]+[])[+!![]+[]] 产生 "a"

In lại Tác giả: Hồ Xil 更新时间:2023-11-01 02:14:51 27 4
mua khóa gpt4 Nike

我有兴趣了解 JavaScript 的内部结构.我试图阅读 SpiderMonkey 的来源和 Rhino但是绕过我的头是相当复杂的。

我问的原因是:为什么像

  • (![]+[])[+!![]+[]] 生成 "a"
  • (Å=[],[µ=!Å+Å][µ[È=++Å+Å+Å]+({}+Å)[Ç=!!Å+µ,ª =Ç[Å]+Ç[+!Å],Å]+ª])()[µ[Å]+µ[Å+Å]+Ç[È]+ª](Å) 产生 警报(1)?

nguồn:http://sla.ckers.org/forum/read.php?24,32930,page=1 .

那个论坛上有很多 JavaScript 怪异的例子,我想从编程的 Angular 了解它在 Web 应用程序安全方面的工作原理。

câu trả lời hay nhất

如果您想了解为什么这些奇怪的表达式会如此工作,您可以打开 firebug 控制台并自己进行实验。我做到了,我得到了 ![] Đúng SAI,!![] Đúng ĐÚNG VẬY,添加了一个数组到 bool 值(false+[] hoặc true+[])生成该值的字符串版本(false+[]="false" ).

这样表达式可以归结为:

"false"["1"] 

显然是“a”

关于javascript - 为什么 (![]+[])[+!![]+[]] 产生 "a",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2100184/

27 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress