Empty arrays are true but they\'re also equal to false.
Example:
const array = [] const boolValueOfArray = !!array // true
It happens because
ToNumber(ToPrimitive([])) == ToNumber(false)
[]
Array
ToPrimitive([])
ToNumber("")
0
ToNumber(false)