It would just be logical if [0] == "" because both parts are reduced to zero.
Or another question, why [] != "0" and [[]] != "0" because here both parts are reduced to zero.
http://dorey.imtqy.com/JavaScript-Equality-Table/
console.log(Number([0])); console.log(Number("")); console.log(Number([])); console.log(Number([[]])); console.log(Number("0"));