JavaScriptでオブジェクトが空かどうかを判定する方法
JavaScriptでは、次のように書くと「空のオブジェクト」を作成できます。
const emptyObject = {}
しかし、このオブジェクトが本当に空なのかどうかを、JavaScriptでどうやって確認すればよいのでしょうか。
答えは、Object.entries() メソッドを使うことです。
まず、別の空のオブジェクトを用意します。
const someObject = {}
このオブジェクトに対して Object.entries() を実行してみましょう。
Object.entries(someObject)
結果をコンソールに出力すると、次のようになります。
console.log(Object.entries(someObject))
// [] (空の配列)
Object.entries() は、オブジェクト自身が持つすべてのプロパティを「[キー, 値]」のペアからなる配列として返します。そのため、オブジェクトが空であれば、結果は空の配列 [] になります。
この性質を利用すれば、次のように length プロパティと組み合わせて、オブジェクトが空かどうかを真偽値で簡単に判定できます。
const isEmpty = Object.entries(someObject).length === 0;
console.log(isEmpty); // true(オブジェクトが空の場合)
なお、プロパティの存在だけを確認したい場合は、Object.keys() や Object.values() を使っても同様の判定が可能です。用途に応じて使い分けるとよいでしょう。
-
JavaScriptでボタンがクリックされたかどうかを判定する方法
JavaScriptを使えば、ボタンがクリックされたかどうかを簡単に判定できます。最も一般的な方法は、addEventListener()メソッドでクリックイベントを監視することです。以下に、ボタンのクリックを検出し、クリックされた回数を画面に表示するサンプルコードを紹介します。 サンプルコード <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8 /> <meta name=viewport content=width=device-width, initial-scale=1
-
【JavaScript】オブジェクトがクラスのインスタンスかどうかを判定する方法
JavaScriptでは、instanceof 演算子を使うことで、あるオブジェクトが特定のクラス(コンストラクタ関数)のインスタンスであるかどうかを簡単に判定できます。instanceof 演算子とは?instanceof 演算子は、左辺のオブジェクトが右辺に指定したコンストラクタ関数のプロトタイプチェーン上に存在するかどうかを評価し、その結果を真偽値(true / false)として返します。この仕組みを利用することで、オブジェクトがどのクラスから生成されたものなのかを実行時に動的にチェックできます。コード例以下は、ボタンをクリックしたときに student1 オブジェクトが Studen