JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

【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>

コードの仕組み

このプログラムがどのように動作しているのか、処理の流れを順番に見ていきましょう。

  1. 入力値の取得: document.getElementById('digits').value により、入力フィールドに入力された文字列(数値)を取得します。
  2. 文字列を1桁ずつ分割: split('') を使うことで、入力された文字列を1文字(1桁)ずつの配列に変換できます。
  3. 各桁を数値化して加算: forEach() で配列の各要素をループ処理し、parseInt(x,10) で文字を10進数の整数に変換しながら、変数 tot に加算していきます。
  4. 結果の表示: 最後に document.getElementById('output').innerHTML に合計値を代入することで、ページ上に計算結果を出力します。

実行結果

実際にブラウザで動作させると、以下のように表示されます。

【JavaScript】入力した数値の各桁の合計をボタンクリックで計算・表示する方法

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

【JavaScript】入力した数値の各桁の合計をボタンクリックで計算・表示する方法

まとめ

このように、split()forEach() を組み合わせることで、数値を1桁ずつ分解して合計を求める処理をシンプルに実装できます。入力値は文字列として扱われるため、加算前に parseInt() で整数へ変換する点がポイントです。

  1. JavaScriptのNumber()関数とは?使い方とサンプルコードを解説

    JavaScriptのNumber()関数は、引数として渡された値やオブジェクトを、それに対応する数値へ変換するための関数です。真偽値や文字列型の数字、さらにはDateオブジェクトなども数値に変換できるため、データ型の変換処理において非常に便利な組み込み関数の一つです。例えば、Number(true)は「1」、Number(false)は「0」を返します。また、数字のみで構成された文字列「149」を渡せば数値の149に変換され、new Date()で生成した日付オブジェクトを渡すと、1970年1月1日からの経過ミリ秒数が返されます。以下に、Number()関数の動作を確認できるサンプルコードを

  2. 【初心者向け】JavaScriptでボタンクリック時に数値を加算するSum関数の作り方

    はじめに 本記事では、ボタンをクリックするたびに指定した値を加算していき、結果を画面に表示するシンプルなJavaScriptの「Sum関数」の実装方法を解説します。onclickイベントとparseInt()を組み合わせることで、わずか数行のコードで動的な加算処理を実現できます。 ボタンの準備 まず、以下のようなHTMLボタンを用意します。 <button type=button onclick=addTheValue(10)>Sum</button> このボタンがクリックされると、引数として10を渡して関数 addTheValue(10) が呼び出されます。つま