JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScriptでnullやundefinedの値を別の値に置き換える方法

JavaScriptでは、変数が null または undefined の場合に、あらかじめ用意した代替値へ置き換えたい場面がよくあります。そんなときに便利なのが、論理OR演算子 || を使った記述方法です。

基本構文

以下のように書くことで、変数が null や undefined のときに任意の値へ置き換えることができます。

var anyVariableName = yourVariableName || anyValue;

|| 演算子は左辺が falsy(null、undefined、0、空文字列など)と評価された場合に、右辺の値を返します。

サンプルコード

実際に動作を確認してみましょう。

var value = null;
console.log("元の値 = " + value);

var actualValue = value || "これは正しい値です";
console.log("置換後の値 = " + actualValue);

プログラムの実行方法

上記のプログラムはNode.js環境で実行できます。ターミナルから以下のコマンドを入力してください。

node ファイル名.js

ここでは、ファイル名を demo56.js として保存しています。

実行結果

このプログラムを実行すると、次のような出力が得られます。

PS C:\Users\Amit\JavaScript-code> node demo56.js
元の値 = null
置換後の値 = これは正しい値です

補足:Null合体演算子「??」について

ES2020以降では、より厳密に null と undefined だけを判定したい場合に使える null合体演算子 ?? が利用可能です。

var value = null;
var actualValue = value ?? "これは正しい値です";
console.log(actualValue); // これは正しい値です

|| は falsy な値すべてに対して右辺を返しますが、?? は null と undefined の場合のみ右辺を返します。そのため、0 や空文字列を有効な値として扱いたい場合には ?? の使用が推奨されます。

  1. JavaScriptの「未宣言(undeclared)」と「未定義(undefined)」の違いとは?

    JavaScriptを学んでいると、「未宣言(undeclared)」と「未定義(undefined)」という一見似たような用語に出会うことがあります。どちらも変数に値が存在しない状態に関係していますが、意味も発生する状況もまったく異なります。本記事では、両者の違いをわかりやすく解説し、実際に動作するサンプルコードもご紹介します。 未宣言(Undeclared)とは? 未宣言とは、var、let、constのいずれを使っても宣言されていない変数にアクセスしようとしたときに発生する状態です。この場合、JavaScriptはReferenceError(参照エラー)をスローし、プログラムが意図しな

  2. JavaScriptのundefined(未定義)とは?変数の判定方法をサンプルコードで解説

    JavaScriptのundefined(未定義)は、変数がまだ宣言されていない、あるいは宣言されていても値が代入されていないことを示す特殊な値です。変数の状態を確認したい場面で頻繁に登場するため、初心者の方にとって押さえておきたい重要な概念の一つです。 undefinedの基本的な役割 undefinedは、次のような状況で返される値です。 変数を宣言したものの、まだ値を代入していない場合 存在しないオブジェクトのプロパティにアクセスした場合 関数の引数が渡されなかった場合 以下は、JavaScriptのundefinedを使って、変数が定義済みかどうかを判定する実装例です。 サンプルコ