ホームページ >ウェブフロントエンド >jsチュートリアル >javascript parseInt関数解析(転送)_基礎知識
JavaScript の parseInt 関数
JavaScript の parseInt 関数、それが何をするのかは誰もが知っています
しかし、
parseInt("07") が
parseInt("08 ") をどのくらい返すか知っていますか? ) はいくつ返されますか?
正解は
parseInt("07") が 8 を返します
parseInt("08") が 0 を返します
どこに問題があるかわかりますか?
実際のところ、誰もがこの問題について考えたことがないかもしれません。
JavaScript の parseInt 関数を使用する場合、
parseInt("08") または parseInt("09") は実際には 0、
および parseInt("01")...parseInt("07" ) を返します。は正しいです。
これはなぜですか?
最初は理解するのが難しかったですが、後でこの問題の原因は、先頭に「0」があると、
JavaScript のデバッガがそれを 8 進数であると認識してしまうためであることが分かりました。
"08" と "09" " は正当な 8 進数
ではないため、その問題が発生しますが、parseFloat にはこの問題はありません。
parseInt() 関数は、JavaScript リファレンスで次のように説明されています。
parseInt メソッド
文字列から変換された整数を返します。文字列を整数に変換します。
parseInt(numString, [radix])
parseInt のパラメータ基数:
オプション。 numString が保持する数値の基数を表す 2 ~ 36 の値。指定しない場合、「0x」の接頭辞が付いている文字列は 16 進数として扱われ、「0」の接頭辞が付いている文字列は 8 進数として扱われます。他のすべての文字列は 10 進数として扱われます。
したがって、parseInt("08",10) または parseInt("09",10) を使用する場合、
解析に 10 進数を使用するように JavaScript インタプリタに通知すると、必要な数値を取得できます。
添付ファイル:
parseInt("abc") // NaN を返します。
parseInt("12abc") // 12 を返します。