我有兴趣了解jQuery代码是如何工作的,但是当我打开jQuery文件时,我偶然发现了这个:
! function(a, b) {
"object" == typeof module && "object" == typeof module.exports ?
module.exports = a.document ? b(a, !0) : function(a) {
if (!a.document) throw new Error("jQuery requires a window with a document");
return b(a)
} : b(a)
}("undefined" != typeof window ? window : this, function(a, b) {
/*contains the rest of the code */
});
这种语法不同于我所见过的任何东西,或者它太复杂和庞大而无法找到。我搜索了整个Google,但我没有找到相关结果。这是什么意思?
更具体地说:
?
运算符在没有:
的情况下连续使用? (第2,3行)!
运算符在第一行中的函数之前的目的是什么?为什么在第3行中0
之前也使用它?如果0
为false
,那么!0
是true
吗?