9xakep,
потому что костанты 5, 6, 7 и т.п. существуют нужно делать как Deff (я опоздал за ним) обернуть в скобку и тогда идет следущая логика:
var a = 3;
if (a == 3 || 5 || 6) alert('false');//неправильно, алерт выполнится
if (a == 5 || 6) alert('false');//неправильно, алерт выполнится
1) логика - выполнить алерт если a = 3 - true, или есть 5 - true, или есть 6 - true --- конец true
2) логика - выполнить алерт если a = 5 - false, или есть 6 - true --- конец true
var a = 3;
if (a == (3 || 5 || 6)) alert('true');//правильно, алерт выполнится
if (a == (4 || 5 || 6)) alert('true');//правильно, алерт не выполнится
1) логика - выполнить алерт если a = 3 - true, или a = 5 - false, или a = 6 - false --- конец true
2) логика - выполнить алерт если a = 4 - false, или a = 5 - false, или a = 6 - false --- конец false