Home  >  Article  >  Web Front-end  >  How to convert Number and String to each other in javascript

How to convert Number and String to each other in javascript

零到壹度
零到壹度Original
2018-04-09 10:18:014006browse


The content of this article is to share with you how to realize the mutual conversion of Number and String in JavaScript. It has certain reference value. Friends in need can refer to it

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Number和String之间的互相转换</title>
<script type="text/javascript">
//将Number数字转换成String字符串
//第一种方法是使用String()函数,该方法有局限性,即无法将某个数值转换成不同进制的,也无法选取有效数字等等
var num = 123456.7897;
var str = String(num);
console.log("String(" + num + ") = " + str);
//第二种方法是使用Number对象的toString()方法,toFixed()方法,toExponential()方法,toPrecision()方法
//toString()方法默认将Number转换成十进制数
str = num.toString();
console.log(num + ".toString() = " + str);
//toString(radix)方法可以带一个参数radix,表示将Number按照提供的进制转换,进制范围2-36,如果超出这个范围将报错。
str = num.toString(2);
console.log(num + ".toString(2) = " + str);
//toFixed()方法,如果不提供参数的话默认是精确到个位,四舍五入法,不使用指数计数法
str = num.toFixed();
console.log(num + ".toFixed() = " + str);
//toFixed(float)方法可以带一个参数,表示精确到小数点后面第几位,如果参数为0,和不提供参数功能相同
str = num.toFixed(1);
console.log(num + ".toFixed(1) = " + str);
//toExponential方法,该方法使用指数计数法转换数值,小数点前只有一位,小数点后面的位数由参数指定,默认情况下不会截取位数
str = num.toExponential();
console.log(num + ".toExponential() = " + str);
//toExponential方法带参数代表小数点后保留的位数
str = num.toExponential(1);
console.log(num + ".toExponential(1) = " + str);
//toPrecision()方法按照参数指定的有效数字个数转换数值,默认不给参数的情况下保留所有有效数字位
str = num.toPrecision();
console.log(num + ".toPrecision() = " + str);
//toPrecision()可以带一个参数,代表有效数字位数,如果该位数小于原数的整数部分位数,则用指数形式表示,否则用非指数形式。
str = num.toPrecision(6);
console.log(num + ".toPrecision(6) = " + str);
//将String字符串转换成Number也有两种方式
//第一种方式仍然使用显示转换函数Number,可以转换整数和浮点数,但是这种方法不允许待转换的字符串中出现任何非法字符,包括空格,如果存在非法字符,将得到结果NaN。
str = "12 3";
num = Number(str);
console.log("Number(" + str + ") = " + num);
//第二中方式是使用全局函数parseInt()和parseFloat()
//parseInt()方法只能解析整数,会忽略所有的前导空白字符,直到解析到某个非法非空白字符为止,小数点在parseInt()被认为是非法字符,如果中间出现空格,也会被认为是非法字符。
str = "a .1 1.8";
num = parseInt(str);
console.log("parseInt(" + str + ") = " + num);
//parseInt()方法的第二个参数是进制,默认情况下回以十进制去解析。
str = "0xff";
num = parseInt(str, 16);
console.log("parseInt(" + str + ",16" + ") = " + num);
//parseFloat()方法可以解析整数和浮点数,它会将小数点解析成合法字符,如果第一个字符就是小数点,则会被解析成0.xxx,但是parseFloat()方法不能更换进制 ,得明确告诉它是多少进制,比如十六进制加0x,实践证明,明确告诉也没用
//0xff会被解析成0...,parseInt()方法带不带第二个参数都能解析成255
str = "0xff";
num = parseFloat(str);
console.log("parseFloat(" + str + ") = " + num);
</script>
</head>
<body>
</body>
</html>

Related recommendations:

JS Number String Conversion

Shortcut method for string and number type conversion

##Convert string string type to number numeric type

The above is the detailed content of How to convert Number and String to each other in javascript. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn