parseInt(string,radix) 関数の桁落ち?

[上に] [前に] [次に]
わーわ [E-Mail] 1999/03/10(水) 23:43:15
困ったときの"とほほ"頼み!
基本的な質問ですいませんが教えて下さい。
parseInt(string,radix) 関数で10桁の文字列(string)を整数値に変換しようとしたのですが、
"2147483647"(10進)より大きい数字が変換されません。
2進で表示すると32桁なるので、桁落ちしてしまうんでしょうか?
もし桁落ちであれば、他に10桁の文字列を整数値にする方法はあるのでしょうか?

hiro-kim 1999/03/12(金) 09:12:59
JavaScriptの桁あふれ,ですね。おっしゃるとおり32bit枠の問題でしょう。

JavaScript標準の機能ではなく,プログラミング上の工夫で対処すると思います。

整数値に変換せず文字列のまま扱うとか,文字列を上位と下位に分けて扱うとか,
はたまたparseFloat()であっても構わないとか。
32bit超の整数値をどのような用途で使おうとしているのか,によって対処の仕方も異なると思います。

わーわ 1999/03/14(日) 00:15:32
[[解決]]
やはり、プログラミングで工夫するしかないですか...。
hiro-kimさんありがとうございました。

[上に] [前に] [次に]