【JavaScript】入力した数値の各桁の合計をボタンクリックで計算・表示する方法
はじめに
本記事では、ユーザーが数値を入力できるテキストボックスを用意し、ボタンがクリックされたときに、その数値の各桁の合計を計算して画面に表示するJavaScriptプログラムの作り方を解説します。
例えば「12345」と入力して送信ボタンを押すと、「1 + 2 + 3 + 4 + 5 = 15」というように、すべての桁の数字を足した結果が出力されます。
実装コード
まずは完成形のコードを見てみましょう。
JavaScriptコード
function myFunc() {
var num = document.getElementById('digits').value;
var tot = 0;
num.split('').forEach( function (x) {
tot = tot + parseInt(x,10);
});
document.getElementById('output').innerHTML = tot;
}
HTMLコード
<input id="digits" /> <button onClick="myFunc()">Submit</button> <div id="output"></div>
コードの仕組み
このプログラムがどのように動作しているのか、処理の流れを順番に見ていきましょう。
- 入力値の取得:
document.getElementById('digits').valueにより、入力フィールドに入力された文字列(数値)を取得します。 - 文字列を1桁ずつ分割:
split('')を使うことで、入力された文字列を1文字(1桁)ずつの配列に変換できます。 - 各桁を数値化して加算:
forEach()で配列の各要素をループ処理し、parseInt(x,10)で文字を10進数の整数に変換しながら、変数totに加算していきます。 - 結果の表示: 最後に
document.getElementById('output').innerHTMLに合計値を代入することで、ページ上に計算結果を出力します。
実行結果
実際にブラウザで動作させると、以下のように表示されます。

数値を入力して「Submit」ボタンをクリックすると、次のように各桁の合計が表示されます。

まとめ
このように、split() と forEach() を組み合わせることで、数値を1桁ずつ分解して合計を求める処理をシンプルに実装できます。入力値は文字列として扱われるため、加算前に parseInt() で整数へ変換する点がポイントです。
-
JavaScriptのNumber()関数とは?使い方とサンプルコードを解説
JavaScriptのNumber()関数は、引数として渡された値やオブジェクトを、それに対応する数値へ変換するための関数です。真偽値や文字列型の数字、さらにはDateオブジェクトなども数値に変換できるため、データ型の変換処理において非常に便利な組み込み関数の一つです。例えば、Number(true)は「1」、Number(false)は「0」を返します。また、数字のみで構成された文字列「149」を渡せば数値の149に変換され、new Date()で生成した日付オブジェクトを渡すと、1970年1月1日からの経過ミリ秒数が返されます。以下に、Number()関数の動作を確認できるサンプルコードを
-
【初心者向け】JavaScriptでボタンクリック時に数値を加算するSum関数の作り方
はじめに 本記事では、ボタンをクリックするたびに指定した値を加算していき、結果を画面に表示するシンプルなJavaScriptの「Sum関数」の実装方法を解説します。onclickイベントとparseInt()を組み合わせることで、わずか数行のコードで動的な加算処理を実現できます。 ボタンの準備 まず、以下のようなHTMLボタンを用意します。 <button type=button onclick=addTheValue(10)>Sum</button> このボタンがクリックされると、引数として10を渡して関数 addTheValue(10) が呼び出されます。つま