ホームページ >ウェブフロントエンド >jsチュートリアル >javascript_javascriptスキルにおける2つの感嘆符の使用例を詳しく解説

javascript_javascriptスキルにおける2つの感嘆符の使用例を詳しく解説

WBOY
WBOYオリジナル
2016-05-16 16:37:091384ブラウズ

JavaScript コードでは !! がよく見られますが、この記事では例を使用して JavaScript での 2 つの感嘆符の使用法を詳しく分析します。皆さんの参考に共有してください。具体的な分析は次のとおりです。

JavaScript の

!! は論理的な "not"、つまり論理的な "not" に基づいて再び "not" になります。多くの型は、! または !! によって bool 型に変換でき、その後、他の判断を行うことができます。

1. アプリケーション シナリオ: オブジェクトが存在するかどうかを判断します

次のような json オブジェクトがあるとします。

{ color: "#E3E3E3", "font-weight": "bold" }

存在するかどうかを確認する必要がある場合は、!! を使用します。

オブジェクトを印刷するだけでは、オブジェクトが存在するかどうかを判断できません:

var temp = { color: "#A60000", "font-weight": "bold" };
alert(temp);

結果: [オブジェクト: オブジェクト]

json オブジェクトに ! または !! を実装すると、json オブジェクトが存在するかどうかを判断できます:

var temp = { color: "#A60000", "font-weight": "bold" };
alert(!temp);

結果: false

var temp = { color: "#A60000", "font-weight": "bold" };
alert(!!temp);

結果: true

2. ! または !! を使用してさまざまな型を bool 型に変換する規則

1. null

の「not」の場合は true を返します。

var temp = null;
alert(temp); 
結果: null

var temp = null;
alert(!temp); 
結果: true

var temp = null;
alert(!!temp); 
結果: false

2. 未定義の「not」の場合は true を返します

var temp;
alert(temp);
結果: 未定義

var temp;
alert(!temp);
結果: true

var temp;
alert(!!temp);
結果: false

3. 空の文字列

内の「not」の場合は true を返します。

var temp="";
alert(temp);
結果: 空

var temp="";
alert(!temp);
結果: true

var temp="";
alert(!!temp);
結果: false

4. ゼロ以外の整数型

の「not」の場合は false を返します。

var temp=1;
alert(temp);
結果: 1

var temp=1;
alert(!temp);
結果: false

var temp=1;
alert(!!temp);
結果: true

5. 0

の「not」の場合は true を返します。

var temp = 0;
alert(temp);

結果: 0

var temp = 0;
alert(!temp);
結果: true

var temp = 0;
alert(!!temp);
結果: false

6. 文字列

内の「not」の場合は false を返します。

var temp="ab";
alert(temp);
結果: ab

var temp="ab";
alert(!temp);
結果: false

var temp="ab";
alert(!!temp);
結果: true

7. 配列内の「not」の場合は false を返します

var temp=[1,2];
alert(temp);
結果: 1,2

var temp=[1,2];
alert(!temp);
結果: false

var temp=[1,2];
alert(!!temp);
結果: true

この記事で説明されている内容は、JavaScript プログラミングを学ぶすべての人にとって一定の参考価値があると信じています。

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