"Illetve minek kellene történnie, ha a 2-t mint értéket próbálnád egy ifben használni?"
A 2 nem logikai érték. Nem lehet if-ben használni. A logikai értékek: true és false.
Ennyi. Sem a 0, a -1, a 2, a NaN, a null, a nil, az undefined nem logikai értékek.