Dziwny zapis liczb w JS

0

Witam
Niech mi ktoś wytłumaczy lub nakieruje jak nazywa się taki zapis w JS (a może nie tylko), mianowicie:

!+[]+!![]+!![]

to 3, a

+((!+[]+!![]+!![]+!![]+[])+(!+[]+!![]+!![]+!![]))

to 44
ktoś wie jak to interpretować? :D

0

W js, zero, null, false to false czyli 0, a wszystko inne to true, a ! zmienia na odwrotne, a dodajesz to za pomocą +.

1

Tutaj masz wszystko rozpisane (a nawet więcej niż w przykładzie!)

1

(!+[]+!![]+!![]+!![]+[]) daje '4',
(!+[]+!![]+!![]+!![]+[])+(!+[]+!![]+!![]+!![]+[]) daje '44', więc
+((!+[]+!![]+!![]+!![]+[])+(!+[]+!![]+!![]+!![]+[])) daje 44

1 użytkowników online, w tym zalogowanych: 0, gości: 1