JavaScript: 文字列を数値に変換する
文字列を数値に変換する場合は、Number(),parseInt()、paraseFloat()を使用します。
整数にする場合はparseInt()、浮動小数点数にする場合はparseFloat()、 どちらにも対応しているのがNumber()です。
数値に変換できない文字列の場合は、全て「NaN」が返されます。
次にそれぞれの関数で'1'を変換、'1.5'を変換、'hoge'を変換してみます。
Number()
Number()は整数値、浮動小数点数のどちらにも対応しています。
// '1' を変換
var str = '1';
console.log(typeof(str) + ': ' + str); // string: 1
var num = Number(str);
console.log(typeof(num) + ': ' + num); // number: 1
// '1.5' を変換
var str = '1.5';
var num = Number(str);
console.log(typeof(num) + ': ' + num); // number: 1.5
// 'hoge' を変換
var str = 'hoge';
var num = Number(str);
console.log(typeof(num) + ': ' + num); // number: NaN
parseInt()
parseInt()は整数値に変換します。小数点以下の部分がある場合は切り捨てられます。
// '1' を変換
var str = '1';
var num = parseInt(str);
console.log(typeof(num) + ': ' + num); // number: 1
// '1.5' を変換
var str = '1.5';
var num = parseInt(str);
console.log(typeof(num) + ': ' + num); // number: 1
// 'hoge' を変換
var str = 'hoge';
var num = parseInt(str);
console.log(typeof(num) + ': ' + num); // number: NaN
parseFloat()
parseFloat()は浮動小数点数に変換します。
// '1' を変換
var str = '1';
var num = parseFloat(str);
console.log(typeof(num) + ': ' + num); // number: 1
// '1.5' を変換
var str = '1.5';
var num = parseFloat(str);
console.log(typeof(num) + ': ' + num); // number: 1.5
// 'hoge' を変換
var str = 'hoge';
var num = parseFloat(str);
console.log(typeof(num) + ': ' + num); // number: NaN