JavaScript/!

カテゴリ:Book:JavaScript#!%20

!( Logical NOT Operator ) は、ECMAScript における論理否定演算子です。この演算子は、オペランドの真偽値を反転させます。オペランドが true と評価される場合、 false を返し、 false と評価される場合、 true を返します[1]

構文

! expression
  • expression: 真偽値に変換される式。

この演算子は、以下のように使用されます:

let result = !expression;

基本的な使用法

以下のプログラムは、論理否定演算子の基本的な使用法を示しています。

// 基本的な使用法
let a = true;
let b = false;

console.log(!a); // false
console.log(!b); // true

このプログラムでは、a の値が true なので !afalse を返し、b の値が false なので !btrue を返します。

条件式での使用

以下のプログラムは、条件式で論理否定演算子を使用する例を示しています。

// 条件式での使用
let isLoggedIn = false;

if (!isLoggedIn) {
  console.log("Please log in."); // "Please log in."
}

このプログラムでは、isLoggedInfalse の場合にメッセージが表示されます。

複雑な式での使用

以下のプログラムは、複雑な式で論理否定演算子を使用する例を示しています。

// 複雑な式での使用
let x = 10;
let y = 20;

console.log(!(x > y)); // true
console.log(!(x < y)); // false

このプログラムでは、x > yfalse なので !(x > y)true を返し、x < ytrue なので !(x < y)false を返します。

オブジェクトのプロパティでの使用

以下のプログラムは、オブジェクトのプロパティに対して論理否定演算子を使用する例を示しています。

// オブジェクトのプロパティでの使用
const obj = {
  isActive: false
};

console.log(!obj.isActive); // true

このプログラムでは、obj.isActivefalse なので !obj.isActivetrue を返します。

注意点

  • 真偽値への変換: 論理否定演算子は、オペランドを真偽値に変換します。例えば、0nullundefinedNaN""false に変換され、それ以外の値は true に変換されます。
  • 副作用: 論理否定演算子自体は副作用を持ちませんが、オペランドの評価に副作用がある場合、その副作用が発生します。

脚註

  1. 論理否定演算子は、条件式や真偽値の反転に広く使用されます。

外部リンク

カテゴリ:Book:JavaScript#!%20 カテゴリ:JavaScript
カテゴリ:Book:JavaScript カテゴリ:JavaScript カテゴリ:Pages using the JsonConfig extension