3

サーバーからの応答で、JSON オブジェクトを取得します。ブールフラグがあります。

if(file.showInTable == 'true') {

} 

しかし、showInTableが に設定されていてもfalse、そのコード ブロック内に入ります。それに対処する方法は?

私は試した:

if(file.showInTable == 'true')
if(file.showInTable)
if(Boolean(file.showInTable))

編集

Ghommey が述べたように、2 番目のオプションを使用してその値を確認しました。比較ステートメントが を返しfalseたとしても、それはコード内にも入ります。下の写真を見てください

ここに画像の説明を入力

4

2 に答える 2

2

false または true (bool として) に設定されます - Tony

ブール値を文字列と比較するのはなぜですか?

ブール値として比較するだけです:

if(file.showInTable === true) {

} 

また

if(file.showInTable !== false) {

} 
于 2012-08-17T09:01:34.327 に答える
1

これは醜いですが、なぜですか?

if (file.showInTable === "false") file.showInTable = false;
于 2012-08-17T09:03:48.903 に答える