これは基本的なことですが、皆さんと共有する価値があると思いました. コード圧縮ユーティリティが、条件が次のように記述されているコード フラグメントを変更したことを確認しました。
if(document.getElementById('foo').value == '6')
に
if('6' == document.getElementById('foo').value)
それはどのように役立ちますか?
これは基本的なことですが、皆さんと共有する価値があると思いました. コード圧縮ユーティリティが、条件が次のように記述されているコード フラグメントを変更したことを確認しました。
if(document.getElementById('foo').value == '6')
に
if('6' == document.getElementById('foo').value)
それはどのように役立ちますか?
2つのうちの1つを逃した場合、代入を回避してエラーを取得するためです=。
if('6' = document.getElementById('foo'))
合格しません(リテラルに割り当てます)が、
if(document.getElementById('foo') = '6')
静かに失敗します。
in javascript は、==とは対照的に、「強く型付けされた」ものではありません===。
例えば :
if (1 == '1')
{
//Will pass here.
}
if (1 === '1')
{
//Will not pass here
}
したがって、これ==は、2 つのオペランドの一方が他方の型にキャストされることを意味します。
'foo' == aと の間に見える唯一の違いa == 'foo'は、ある場合aは string にキャストされ、他の場合'foo'は wathever にキャストされるということですa。