• ベストアンサー

roundupについて教えてください。

roundup(1371.2, -1) = 1380 小数点の左側 1 桁の 1 の位で切り上げたいのですが javascriptではどのように記述すればよいでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

たとえばこんなかんじ <script> function roundup(num,digit){ var d=Math.pow(10,(digit)); var n=Math.ceil(num*d)/d; return n; } alert(roundup(1371.2,-1)); alert(roundup(1371.2,-2)); alert(roundup(1371.2,-3)); </script>

kbtknj
質問者

お礼

非常に役立ちました。 ありがとうございます。

その他の回答 (2)

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.3

すみませんNo1の回答はまちがってました。 Math.pow(c,d)が必要でした。 Math.pow(c,d)はcのd乗を返すです。 ※Math.pow(10,-1)は1/10の事になります。 No.2さんが正しいです x=1371.2; y=-1; x=roundup(x,y); function roundup(x,y){ Math.ceil(x * Math.pow(10,y))/Math.pow(10,y); return x; }

kbtknj
質問者

お礼

訂正までしていただきありがとうございます。

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.1

Math.ceil(n)を使えば、n の小数点以下を繰り上げた整数値が返ります。 x=1371.2; y=1; x=roundup(x,y); function roundup(x,y){ Math.ceil(x/10*y)*10*y; return x; }

関連するQ&A