ホームページ >ウェブフロントエンド >フロントエンドQ&A >es6 でオブジェクトが空かどうかを判断する方法

es6 でオブジェクトが空かどうかを判断する方法

青灯夜游
青灯夜游オリジナル
2022-10-20 16:39:004751ブラウズ

判定方法: 1. 判定には「Object.keys()」を使用します。構文は「Object.keys(obj).length === 0&&obj.constructor===Object」で、true を返してそれを示します。 empty; 2 . オブジェクトを json 文字列に変換し、その文字列が "{}" であるかどうかを判断します; 3. isEmptyObject() を使用して、構文が "$.isEmptyObject(data)" であることを判断し、空であることを示す true を返します。

es6 でオブジェクトが空かどうかを判断する方法

このチュートリアルの動作環境: Windows 7 システム、ECMAScript バージョン 6、Dell G3 コンピューター。

オブジェクトが空かどうかを判断することは、オブジェクトが空のオブジェクトであるかどうかを判断することです。

#ES6 空のオブジェクトかどうかを判断するさまざまなメソッド

1. ES6 Object.keys() メソッドを使用します

Object.keys() は、ES6 の新しいメソッドです。戻り値も、​​オブジェクト自体の列挙可能なすべてのプロパティを含む、オブジェクト内のプロパティ名で構成される配列です (継承したものを除く)(Symbol属性を除く)キー名。

Object.keys(obj).length === 0 && obj.constructor === Object  
// true表示为空对象,false为非空对象
欠点: 一部のブラウザはこれをサポートしていないため、babel クラス プラグインを通じて ES5 に変換する必要があります。使用例は次のとおりです:

var data = {};

var arr = Object.keys(data);

alert(arr.length == 0);//true 即为空对象

var datas={a:1,b:2};

var aRR = Object.keys(datas);

console.log(aRR) -->   ['a','b']

2. オブジェクトを json 文字列に変換し、その文字列が "{}"# であるかどうかを判断します。 ##

var data = {};
var b = (JSON.stringify(data) == "{}");
alert(b);//true
3. for in ループ判定

var obj = {};
var b = function() {
	for(var key in obj) {
		return false;
	}
	return true;
}
alert(b());//true
#4. jquery の isEmptyObject メソッド

このメソッドは、jquery によって 3 つのメソッド (in 用) をカプセル化します。これを使用する場合、jquery

var data = {};
var b = $.isEmptyObject(data);
alert(b);//true

5 と Object.getOwnPropertyNames() メソッド
に依存する必要があります。

このメソッドは、Object オブジェクトの getOwnPropertyNames メソッドを使用して、オブジェクト内のプロパティ名を取得し、配列に格納して、配列オブジェクトを返します。オブジェクトが空であるかどうかは、オブジェクトの長さを判断することで判断できます。配列.

注: このメソッドは ie8 と互換性がなく、他のブラウザはテストされていません。

var data = {};
var arr = Object.getOwnPropertyNames(data);
alert(arr.length == 0);//true

[関連する推奨事項:
JavaScript ビデオ チュートリアル

プログラミング ビデオ ]

以上がes6 でオブジェクトが空かどうかを判断する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。