比較
&& や || は比較演算子で、ture or false を返す
論理演算
一方、& や | は、論理演算で、ビット単位の演算結果を返す
JavaScript
JavaScript の場合、型がないため
var val1 = ture && ture;
var val2 = true & ture;
で、各型を見てみると
typeof(val1) : "boolean"
typeof(val2) : "number"
当たり前といえば、当たり前だが、たまに、忘れてしまう