JavaScript Matrice vuota


Esempio

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

Quando [].toString() viene eseguito chiama [].join() se esiste, o Object.prototype.toString() altrimenti. Questo confronto restituisce true perché [].join() restituisce '' che, forzato in 0 , è uguale a ToNumber falso.

Attenzione però, tutti gli oggetti sono veri e Array è un'istanza di Object :

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