2012-04-20 15 views
-1

可能性の重複:
JavaScript === vs == : Does it matter which “equal” operator I use?
The 3 different equals「===」はJavascript/Jqueryを意味しますか?

私はここで何が起こっているのかを理解しようとしています:だから

data.toPage = $('div#someID'); 

if (typeof data.toPage === "string") { 
     // sth 
     console.log("hello"); 
     } 

私は文字列をチェックしています私はありませんか?私のコンソール "helloes"のために私は興味があります。

ありがとうございました!

+1

間三重等号を含むいくつかの有用なJavaScriptの知識のために[ここ](http://stackoverflow.com/questions/ 523643/javascriptとの違い)が答えです。 – sp00m

+0

タイプを強制しないでください。これは*重複している*。 – alex

+0

これらのばかげた看護師の簡単な答えを忘れて、@ sp00mは最初に答えがあった。 :P – SpYk3HH

答えて

5

== これは等しい演算子であり、両方のオペランドが等しい場合は真を返します。 JavaScriptは、比較を行うために異なるデータ型を同じ型に変換しようとします。 「4」であると2と「B」であることが、以下の実施例は、真の値を返すと仮定:

a == 2 
a == "2" 
2 == '2' 

=== これは厳密に等しい演算子であり、唯一のオペランドの両方の場合に真のブールを戻します等しく、同じタイプです。これらの次の例は、trueを返す:

a === 2 
b === 4 
+0

説明をありがとう! – frequent

2

===比較演算子は、比較が行われる前に2つの値がその型が変更されていないことを意味しますので、彼らは同じタイプである必要があるだけでなく、同じことを表しますそれがtrueを返す値。トリプル等号が二重==は一例"1"1の値

を比較し、同じ値を持って(いわば)が、異なるタイプのものであるのに対し、===は、値両方のタイプを比較署名

'1' == 1 // true 
'1' === 1 // false 
2

。したがって、以下では、発生します。

"1" == 1 //true 
"1" === 1 //false 

This is a great read他の良好な対知るもの

関連する問題