空陣列

/* ToNumber(ToPrimitive([])) == ToNumber(false) */
[] == false; // true

執行 [].toString() 時,如果存在則呼叫 [].join(),否則呼叫 Object.prototype.toString()。這個比較是返回 true 因為 [].join() 返回'',強制進入 0,等於 false ToNumber

請注意,所有物件都是真實的,而 ArrayObject 的一個例項:

// Internally this is evaluated as ToBoolean([]) === true ? 'truthy' : 'falsy'
[] ? 'truthy' : 'falsy'; // 'truthy'