アフィリエイト広告を利用しています

広告

posted by fanblog

2021年05月10日

計算結果の数字に3桁区切りのカンマを入れる/ブログでJavaScriptで計算

前回記事で、計算結果をクリップボードにコピーできるボタンが設置できました。
  ↓
 計算結果をコピーできるボタンを設置する/ブログでJavaScriptで計算
SC20210521100942.png


今回からは、少し見た目の改善をしていきます。
まずは、計算結果の数字の桁数が大きくなったときに、3桁区切りのカンマを入れて表示するようにします。
やり方は、「JavaScript 3桁区切り」といった言葉でネット検索すると、すぐに見つかりました。
しかも、JavaScript の計算結果を計算フォームに返す部分に、「.toLocaleString()」を加えるだけなので簡単です。



計算結果の数字に3桁区切りのカンマが入る計算フォーム



A:
B:


A+B=
A×B=




↑ ここに計算のためのフォームのコードと、JavaScript のコードを入れています。
JavaScript は表示されず、計算のためのフォームだけが表示されています。
AとBに少し大きめの数字を入力して計算すると、答えの数字に3桁区切りのカンマが入るはずです。



変更したコードの解説(フォーム)


上で設置した計算フォームのコードは、↓ このようになっています。


<form action="#" name="calformTasuKakeruV3">
A:<input type="text" name="a" value="">
B:<input type="text" name="b" value="">
<input type="button" name="keisan" value="計算" onClick="calTasuKakeruV3();">
<input type="reset" name="reset" value="クリア">
A+B=<input type="text" id="ans1" value="">
A×B=<input type="text" id="ans2" value="">
<input type="button" value="A+Bの答えをコピー" onClick="AnsCopy1V3();">
<input type="button" value="A×Bの答えをコピー" onClick="AnsCopy2V3();">
</form>

赤色部分が今回変更または追加した部分です。
計算フォームは基本的に変更なしで、前回記事のコードとの重複を避けるためにフォームと JavaScript の名前の「V2」を「V3」に変更しただけです。
(AnsCopy1V3() の部分は、前回のコードの AnsCopy1() に「V3」を加えています)



変更したコードの解説(JavaScript)


今回の JavaScript のコードは、↓ このようになっています。


<script language="javascript">
function calTasuKakeruV3()
{
// フォームで入力したデータABを変数に代入
inputValueA = document.calformTasuKakeruV3.a.value - 0;
inputValueB = document.calformTasuKakeruV3.b.value - 0;
// 変数を使って計算
ans1 = inputValueA + inputValueB;
ans2 = inputValueA * inputValueB;
// 計算結果をフォームに出力
document.calformTasuKakeruV3.ans1.value = ans1.toLocaleString();
document.calformTasuKakeruV3.ans2.value = ans2.toLocaleString();
}
// 計算結果をコピー
function AnsCopy1V3() {
var copyTarget = document.getElementById("ans1");
copyTarget.select();
document.execCommand("Copy");
}
function AnsCopy2V3() {
var copyTarget = document.getElementById("ans2");
copyTarget.select();
document.execCommand("Copy");
}
</script>

赤色部分が今回変更または追加した部分です。
「V2」が「V3」に変わっているのは、計算フォームの変更と同じコードの重複を避けるためのものです。
結局変わったのは、計算結果をフォームに出力する部分の ans1 と ans2 の後ろに「.toLocaleString()」を加えただけということになります。


今回の変更によって、クリップボードにコピーする計算結果も、3桁区切りのカンマが付いた数値でコピーされます。
貼り付け先によっては、3桁区切りのカンマが使いない方がいい場合もありそうです。
次回記事で、その方法を書いてみます。


JavaScript で計算ページ関連記事の一覧

にほんブログ村 IT技術ブログ フリーソフトへ
この記事へのコメント
コメントを書く

お名前: 必須項目

メールアドレス:


ホームページアドレス:

コメント: 必須項目

この記事へのトラックバックURL
https://fanblogs.jp/tb/10716723

※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック
ブログ内を検索
ファン

最新記事
カテゴリー
最新コメント
ツイッター
広告設置のお知らせ

当ブログは、Amazonアソシエイト・プログラムの参加者です。
(Amazonアソシエイト・プログラムは、amazon.co.jpを宣伝しリンクすることによってサイトが紹介料を獲得できる手段を提供することを目的に設定されたアフィリエイト宣伝プログラムです)
記事内で使用している画像の一部は、Amazonの商品画像を使用しており、その商品へのリンクになっています。

また、その他のアフィリエイト・サービス・プロバイダなどの広告も表示しています。
当ブログをご覧の際は、cookie を有効にし、Webブラウザの広告ブロック機能を使用しないで、ご覧いただきますようにお願いいたします。

プロフィール
ぽん太親父さんの画像
ぽん太親父
建築関係の小さな事務所で、他に適当な人間がいないことから、コンピューター関連の担当をさせられています。 趣味でけっこう長い間パソコンを使っていますが、ちゃんと勉強していないので、うまくいかなくて冷や汗をかくこともしばしば。
プロフィール
×

この広告は30日以上新しい記事の更新がないブログに表示されております。