2008年08月31日

数値計算 このエントリーをはてなブックマークに追加

JavaScriptでは、変数の型を明示的に指定しなくてよい。だが、変数の型を意識せずにプログラムを書けるわけではない。この記事では、2つのフォームフィールドの値を合計して出力するJavaScriptを紹介するが、型を意識せずに作成したプログラムでは「数値加算」ではなく、「文字列連結」になってしまっている。これは、フォームフィールドから取得した値は文字列だからである。

function add(){
var num1 = document.getElementById("num1").value;
var num2 = document.getElementById("num2").value;
var result = num1+num2;
document.getElementById("result").innerHTML=result;
}
+ =

文字列を数字に変換する方法として以下の方法がある。

+ eval(文字列を数式として評価する)
+ parseInt(文字列を整数に変換する)
+ parseFloat(文字列を実数に変換する)

function add_parseInt(){
var num1 = document.getElementById("num1_parseInt").value;
var num2 = document.getElementById("num2_parseInt").value;
var result = parseInt(num1)+parseInt(num2);
document.getElementById("result_parseInt").innerHTML=result;
}
+ =
function add_parseFloat(){
var num1 = document.getElementById("num1_parseFloat").value;
var num2 = document.getElementById("num2_parseFloat").value;
var result = parseFloat(num1)+parseFloat(num2);
document.getElementById("result_parseFloat").innerHTML=result;
}
+ =

邪道ではあるが、0を引くことで文字列を数値に変換できる。

function add_minus0(){
var num1 = document.getElementById("num1_minus0").value;
var num2 = document.getElementById("num2_minus0").value;
var result = (num1-0)+(num2-0);
document.getElementById("result_minus0").innerHTML=result;
}
+ =



トラックバックURL

コメントする

名前:
URL:
  情報を記憶: 評価:  顔   星
 
 
 
Recent Comments
アクセスカウンター
  • 今日:
  • 昨日:
  • 累計:

「最新トラックバック」は提供を終了しました。