Áno, dobre rozmýšľaš. V tom (n - n % 10) /10 by sa to dalo zapísať aj ako (n - n0) / 10 vďaka tomu, že sme si n % 10 uložili do n0.
0|výraz sa v JavaScripte používa na získanie celého čísla (podobne ako sa používa +výraz na konverziu reťazca na číslo). Bitový súčet je definovaný len nad celým číslom, takže ho pretypuje a bitový súčet ľubovoľného čísla s nulou je stále to isté číslo.