1. 数字转换为字符串
a. 要把一个数字转换为字符串,只要给它添加一个空的字符串即可:
var n = 100;
var string = n + "";
b. 要让数字更加显式地转换为字符串,可以使用String()函数:
var n = 100;
var string = String(n);
c. 使用toString()方法:
var n = 100;
var string = n.toString();
toString()的参数为,以10进制为基础,转换为目标进制
var n = 100;
var string = n.toString(16); ———>64
d. toFixed()方法把一个数字转换为字符串,并且显示小数点后的指定的位数。它不使用指数表示法。
var n = 123456.789;
n.toFixed(0); // "123457"
n.toFixed(1); // "123456.79"
e. toExponential()使用指数表示法把一个数字转换为字符串,小数点前面有1位数,而小数点后面有特定的位数。
var n = 123456.789;
n.toExponential(1); // "1.2e+5"
n.toExponential(3); // "1.235e+5"
f. toPrecision()使用指定的有意义的位数来显示一个数字,如果有意义的位数还不够显示数字的整个整数部分,它就使用指数表示法。
var n = 123456.789;
n.toPrecision(4); // "1.235e+5"
n.toPrecision(7); // "123456.8"
2.字符串转换为数字
a. 将一个字符串转换为数字的一种缺少些技巧但是很清楚明白的方法就是:把Number()构造函数作为一个函数来调用:
var number = Number(string_value);
b. parseInt()只截取整数,如果一个字符串以"0x"或"0X"开头,parseInt()将其解析成为一个十六进制的数字,parseInt()甚至可以接受一个参数来指定要解析的数字的基数,合法的值在2到36之间。
parseInt("3 blind mice"); // Returns 3
parseInt("12.34"); // Returns 12
parseInt("0xFF"); // Returns 255
parseInt("11", 2); // Returns 3 (1 * 2 + 1)
parseInt("ff", 16); // Returns 255 (15 * 16 + 15)
parseInt("zz", 36); // Returns 1295 (35 * 36 + 35)
parseInt("077", 8); // Returns 63 (7 * 8 + 7)
parseInt("077", 10); // Returns 77 (7 * 10 + 7)
c. parseFloat()截取整数和浮点数。
parseFloat("3.14 meters"); // Returns 3.14
d. 如果parseInt()和parseFloat()不能够把指定的字符串转换为数字,它们就会返回NaN:
parseInt(''eleven"); // Returns Nan
parseFloat("$72.47"); // Returns NaN
3.JavaScript取整的方法
a.丢弃小数部分,保留整数部分
parseInt(5/2)
b.向上取整,有小数就整数部分加1
Math.ceil(5/2)
c.向下取整
Math.floor(5/2)
d.四舍五入
Math.round(5/2)
小练习:
1.
将 www.baidu.com逆序排列成 moc.udiab.www
var str = 'www.baidu.com';
var str1 = str.split('').reverse().join(''); //将字符串划分成子串,将一个字符串做成一个字符串数组,数组倒序,去掉默认逗号
document.write(str1);
2.
将任意一个多位数,倒序排列——>69875 变为 57896
var n = parseInt(window.prompt('input'));
var string = String(n).split('').reverse().join('');
document.write(string);