JavaScript&&&と𞓜と124;


&論理と
&&論理演算子の「と」で、両方の値がtrueの場合、結果がtrueです.そうでなければfalseです.
console.log(false && true); //  :false
console.log(true && true); //  :true
console.log(false && false); //  :false
??論理または
??は論理演算子であり、「または、両方の値の中の一つはtrueであり、結果はtrueであり、全てfalseである場合、結果はfalseである.
console.log(false || true); //  :true
console.log(true || true); //  :true
console.log(false || false); //  :false
&?との短絡演算
 と?は短絡演算を持っています.演算は左から右へ行きます.&&&前の値がtrueである場合、後の値(内容)に戻ります.&&&前の値がfalseである場合は、直接前の値に戻ります.判断(実行)後の値(内容)はありません.
a(){
	console.log('   a');
	return true;
}

b(){
	console.log('   b');
	return false;
}
var c = 8;
var d = 9;

console.log(c&&d);
//  :9
console.log(d&&c);
//  :8
console.log(a()&&b());
//  :    a    b flase
console.log(b()&&a());
//  :    b false

前の値がfalseである場合、後の値(コンテンツ)を返します.?124;の前の値がtrueである場合、後ろの値(コンテンツ)を判断しないで直接前の値に戻ります.
a(){
	console.log('   a');
	return true;
}

b(){
	console.log('   b');
	return false;
}
var c = 8;
var d = 9;

console.log(c||d);
//  :8
console.log(d||c);
//  :9
console.log(a()||b());
//  :    a true
console.log(b()||a());
//  :    b    a true
&ビットと
&2つの値に使用するバイナリオペレータは、ビットごとに比較し、ビット演算における値1はtrue、数値0はfalse、&演算子の両方の値のうち、2つの値が1である場合は、1を返し、残りは0を返します.
var a = true;
var b = false;
var c = 8;
var d = 9;
var e = 7;

console.log(a&b); //  :false
console.log(a*a); //  :true
console.log(c&d); 
//  :8
//   8        :1000  9    :1001 
//   1000&1001,   :1000
console.log(c&e);
//  :0
//8    :1000  7    :0111
//   1000&0111    :0000

|按位
2つの値の2進数演算子をビットごとに比較し、ビット演算では1がtrueを表し、値0はfalseを表し、|演算子の2つの値のうち1があるときは1を返し、2つが0のときは0を返します.
var a = true;
var b = false;
var c = 8;
var d = 9;
var e = 7;

console.log(a|b); //  :true
console.log(b|b); //  :false
console.log(c|d); 
//  :9
//   8        :1000  9    :1001 
//   1000|1001,   :1001
console.log(c|e);
//  :15
//8    :1000  7    :0111
//   1000&0111    :1111

締め括りをつける
javascriptでは&&和??を使って和や演算を行い、その短絡演算によって、より効率的に演算を実現します.