В строках 6 и 8 вы буквально сравниваете два абсолютно одинаковых выражения.
(X)===(X)
всегда 1 true для любого X, и в этом случае (X)==(X)
также автоматически true (не всегда наоборот).
[]
и {}
не совпадают, следовательно, false
из строк 10 и 12.
(1) при условии, конечно, что X
является неразрушающим или только для чтения выражением, если X
является чем-то вроде (Y++)
, то это не имеет места.