LoginSignup
1
1

More than 1 year has passed since last update.

JavaScript の 論理演算子

Posted at

JavaScript の論理演算子の書き方についておさらいしてみました。

MDNでは このページ に詳しく記述があります。

論理積( AND )

// a & b

const a = 0;
const b = 1;

console.log(a & b);
// 0が出力される

論理和( OR )

// a | b

const a = 0;
const b = 1;

console.log(a|b);
// 1が出力される

否定( NOT )

// !a

const a = 0;

console.log(!a);
// 0(false) の否定 = 「true」が表示される

console.log(Number(!a));
// 0(false) の否定である「true」を数値変換 = 「1」が表示される

排他的論理和( XOR )

// a^b

const a = 0;
const b = 1;

console.log(a^b);
// 1が表示される

const c = 1;
const d = 1;

console.log(c^d);
//0が表示される

否定論理積(NAND)

否定論理積は NOT AND

// !(a&b)

const a = 0;
const b = 1;

console.log( !(a&b) );
// trueが表示される

const c = 1;
const d = 1;

console.log( !(c&d) );
// NOT c AND NOT d = falseが表示される

console.log( Number(!(c&d)) );
// 0が表示される

否定論理和 (NOR)

否定論理和は NOT OR

// !(a|b)

const a = 0;
const b = 1;

console.log( !(a|b) );
// falseが表示される

const c = 0;
const d = 0;

console.log( !(c|d) );
// NOT c OR NOT d = true が表示される

console.log( Number(!(c|d)) );
// 1が表示される

否定排他的論理和 または 論理等価 (XNOR)

a === b の結果で良い?

// (a === b)

const a = 0;
const b = 1;

console.log( a === b );
// falseが表示される

const c = 0;
const d = 0;

console.log( c === d );
// true が表示される

console.log( Number(c === d) );
// 1が表示される

1
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1