ActionScriptでは(NaN == parseFloat(input.text))、常にfalseになることを警告しています。どうして?
-
02-07-2019 - |
質問
かなり明確なドキュメントにもかかわらず、 parseFloat()は、書き込み時にNaNを値として返すことができます次のようなブロック:
if ( NaN == parseFloat(input.text) ) {
errorMessage.text = "Please enter a number."
}
比較は常に偽になると警告されます。また、テストにより、警告が正しいことが示されます。
修正されたドキュメントはどこにあり、AS3で動作するようにこれを書くにはどうすればよいですか?
解決
NaNとの比較は常にfalseであるため。代わりにisNaN()を使用してください。
他のヒント
isNaN(parseFloat(input.text))
ところで、何らかの理由でisNaN()にアクセスできない場合、従来の方法は番号をそれ自体と比較することです:
if( number != number )
{
//Is NaN
}
ドキュメントは、Adobe Flex言語リファレンスこちらにあります。 およびその他のグローバルに利用可能な機能。
所属していません StackOverflow