JavaScriptに関するパーミッションメソッド

1041 ワード

パーrseInt(「08」)とパーrseInt(「09」)の値は8と9ではなく、なんとすべて0であることが偶然に発見されました.
 
インターネットで探してみましたが、パースイント方法のパラメータが分かりませんでした.パースIntの方法について説明します.
 
------------------------------------------------------------------------------
 
parseInt方法
文字列で変換された整数を返します.parseInt(numString, [radix])パラメータ
numString
必ず選択します.数値に変換する文字列.
ラジクス
オプションを選択します.2と36の間のnumStringに格納されている数字の進数を示す値.提供されていない場合、プレフィクスが'0 x'の文字列は16進数として扱われ、プレフィクスが'0'の文字列は8進数として扱われる.他の文字列はすべて10進数として扱われます.
説明
parseInt方法は、numStringに格納されたデジタル値と等しい整数を返します.numStringのプレフィクスが整数と解釈されない場合は、NaNに戻る(数字ではなく).
parseInt(「abc」)      // NaNを返します.
parseInt(「12 abc」)    // 12を返します.
 
NaNはisNaN法で検出できます.
----------------------------------------------------------
 
このように解釈すると、なぜParseInt(「08」)とParseInt(「09」)の値が0になったのかが分かります.
0で始まると、08と09は8進数の数字解析として扱われます.8進数の場合、8と9は不法数字ですので、0に戻ります.