文字列を数値に変換する処理はこちらの記事を参照してください。
String
関数を利用する
toString
メソッドを利用する
toFixed
メソッドを利用するString(変換する数値)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script type="text/javascript">
function TestFunc() {
var a = 100.5;
var b = 200;
var c = "Penguin";
var d = "Duck";
var ab = a + b;
var ac = a + c;
var cd = c + d;
var sasb = String(a) + String(b);
var sab = String(a) + b;
document.forms.form1.text1.value = ab;
document.forms.form1.text2.value = ac;
document.forms.form1.text3.value = cd;
document.forms.form1.text4.value = sasb;
document.forms.form1.text5.value = sab;
}
</script>
</head>
<body>
<form id="form1">
<button type="button" onclick="TestFunc();">Exec</button><br />
<input id="text1" type="text" /><br />
<input id="text2" type="text" /><br />
<input id="text3" type="text" /><br />
<input id="text4" type="text" /><br />
<input id="text5" type="text" /><br />
</form>
</body>
</html>
var a = 100.5;
var b = 200;
var c = "Penguin";
var d = "Duck";
var ab = a + b;
var ac = a + c;
var cd = c + d;
var sasb = String(a) + String(b);
var sab = String(a) + b;
var ab = a + b;
の結果はそれぞれの値が数値として計算されたため、合計値の300がテキストボックスに表示されています。var ac = a + c;
の結果は、変数cが文字列のため、変数aの値も文字列として処理され文字列が連結された結果となり 100Penguin
の値が表示されます。var cd = c + d;
はそれぞれが文字列の値のため、文字列が連結されたPneguinDuck
の文字列が表示されます。var sasb = String(a) + String(b);
はそれぞれが文字列に変換されるため、文字列が連結された結果である 100200
が表示されます。var sab = String(a) + b;
は変数aのみが文字列に変換されますが、片方が文字列となるため、変数bも文字列として扱われ、2番目のテキストボックスと同様の処理になり、文字列が連結された結果である 100200
が表示されます。(変数).toString()
(変数).toString([変換する進数の数])
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script type="text/javascript">
function TestFunc() {
var a = 100.5;
var b = 200;
var c = "Penguin";
var d = "Duck";
var ab = a + b;
var ac = a + c;
var cd = c + d;
var sasb = a.toString() + b.toString();
var sab = a.toString() + b;
document.forms.form1.text1.value = ab;
document.forms.form1.text2.value = ac;
document.forms.form1.text3.value = cd;
document.forms.form1.text4.value = sasb;
document.forms.form1.text5.value = sab;
}
</script>
</head>
<body>
<form id="form1">
<button type="button" onclick="TestFunc();">Exec</button><br />
<input id="text1" type="text" /><br />
<input id="text2" type="text" /><br />
<input id="text3" type="text" /><br />
<input id="text4" type="text" /><br />
<input id="text5" type="text" /><br />
</form>
</body>
</html>
String
関数と同様の処理です。変換部分が (変数名).toString()
の書式でtoStringメソッドを呼び出す記述になっています。(変数).toFixed()
(変数).toFixed([小数点以下の桁数])
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script type="text/javascript">
function TestFunc() {
var a = 100.5;
var b = 200;
var c = "Penguin";
var d = "Duck";
var ab = a + b;
var ac = a + c;
var cd = c + d;
var sasb = a.toFixed() + b.toFixed();
var sab = a.toFixed() + b;
document.forms.form1.text1.value = ab;
document.forms.form1.text2.value = ac;
document.forms.form1.text3.value = cd;
document.forms.form1.text4.value = sasb;
document.forms.form1.text5.value = sab;
}
</script>
</head>
<body>
<form id="form1">
<button type="button" onclick="TestFunc();">Exec</button><br />
<input id="text1" type="text" /><br />
<input id="text2" type="text" /><br />
<input id="text3" type="text" /><br />
<input id="text4" type="text" /><br />
<input id="text5" type="text" /><br />
</form>
</body>
</html>
String
関数と同様の処理です。変換部分が (変数名).toString()
の書式でtoStringメソッドを呼び出す記述になっています。a
が数値ですが、変数c
が文字列であるため、a
とc
の和を取ると、aは文字列として処理され結果は100.5Penguin
となります。a
は暗黙で文字列型に変換される動作となります。 var a = 100.5;
var c = "Penguin";
var ac = a + c;
var a = 100.5;
var a_str = a + '';