De logische OR ( | ) is een "wiskundige" bit-niveau berekening. Je kunt er onder andere bits mee aanzetten.
bijvoorbeeld x | 7 = neem X en zet bits 1,2,3 aan (1+2+4 = 7).. een OR met 0 geeft altijd het originele antwoord (zoals boven gebruikt wordt en voert in JS impliciet een integer conversie uit.).
de argument-OR ( || ) linkt meerdere bewerkingen aan elkaar en het antwoord is geldig als een van de voorwaarden "WAAR" is.
"A=B || C=D || D=D" is "waar" want D=D is waar. De tegenhanger is AND ( && ). en is alleen waar als alles waar is.
EDIT: in volledigheid in JS moet het voorbeeld natuurlijk:
A==B etc. zijn, want voor "=" geldt een zelfde verschil tussen = en ==. = is een toewijzing/wiskundige bewerking, == is een vergelijking tussen 2 dingen.