52ky 发表于 2023-11-3 00:01:09

Cloudflare五秒防护中的jschl_answer加密源码分析 图文教程

!![]等于true,大家可以打开F12-console-输入:!![]。
解析(+!![]+[])
[]是一个array(数组),!在JavaScript中取反的意思。

!![]大概翻译过来就是取反二次后他还是true!
那么+!![]中的+在JavaScript中是自增的意思,true一般都是正数那么此时true不就是1了嘛?
那么继续解析[]他本来就是没值的,他就是一个空数组;在JavaScript中默认是一个空字符串
大家可以把他当一个空的字符串如果这个时候加1不就是等于1吗了?
PS:这里的加1是前面的+!![]的1来加这个[]空字符串所以他才等于1!
大概的意思就是:1+0=1
懂了吧?那么我们来解析难一点的+((!+[]+!![]+!![]+[])+(!+[]+!![]+!![]))
(!+[]+!![]+!![]+[])大概意思就是:(true+true+true+0);

还不懂?我给你转换成小学数学行吗?大概意思就是:(1+1+1+0)猜猜等于几?



页: [1]
查看完整版本: Cloudflare五秒防护中的jschl_answer加密源码分析 图文教程