Number()和parseInt()都可以用来进行数字的转换,那么parseInt()和Number()之间的区别是什么?
parseInt()函数:
parseInt()函数用于解析字符串并将其转换为指定基数的整数。它需要两个参数,要解析的字符串和要使用的基数。基数是一个介于2和36之间的整数,表示数字的基数。
如果parseInt()在解析过程中遇到不符合指定基数的字符,它将忽略该字符和所有后续字符。然后它将解析到该点的值作为一个整数返回。在这种情况下,允许使用前导或尾随的空格。
如果parseInt()函数得到参数如果以数字开头,就会返回开头的合法数字部分;如果以非数字开头,则它将返回NaN。此NaN值不是任何基数的有效数字,不能用于任何数学计算。
语法:
parseInt(string, radix)
Number()函数:
Number()函数用于创建基本类型Number对象。它接受一个参数,即数字的值。此值可以使用字符串传递,Number函数将尝试将其表示为数字。如果参数无法转换为数字,则返回NaN值。此NaN值不是有效数字,不能用于任何数学计算。
语法:
Number(valueString)
parseInt()和Number()之间的区别
下面通过实例来看看parseInt()和Number()之间的区别。
示例1:
这个例子显示parseInt()试图将值转换为可以转换为整数的最后一个字符。后面的空白和字符将被忽略,因为它们是无效的。另一方面,Number()函数只返回NaN。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>parseInt()和Number()之间的区别</title>
</head>
<body>
<h2>parseInt()和Number()之间的区别</h2>
<p>字符串为: 10.6 objects</p>
<p>parseInt的输出为: <span></span></p>
<p>Number的输出为: <span></span></p>
<script type="text/JavaScript">
let string = '10.6 objects';
let number1 = parseInt(string);
let number2 = Number(string);
document.querySelector('.parseoutput').textContent = number1;
document.querySelector('.numberOutput').textContent = number2;
</script>
</body>
</html>
广州品牌设计公司https://www.houdianzi.com
示例2:
parseInt()仅返回整数值的区别,而Number()返回包括浮点的所有数字。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>parseInt()和Number()之间的区别</title>
</head>
<body>
<h2>parseInt()和Number()之间的区别</h2>
<p>字符串为: 3.1415</p>
<p>parseInt的输出为: <span></span></p>
<p>Number的输出为: <span></span></p>
<script type="text/JavaScript">
let string = '3.1415';
let number1 = parseInt(string);
let number2 = Number(string);
document.querySelector('.parseoutput').textContent = number1;
document.querySelector('.numberOutput').textContent = number2;
</script>
</body>
</html>
区别:
1、当转换的内容包含非数字的时候,Number() 会返回NaN(Not a Number);parseInt() 要看情况,如果以数字开头,就会返回开头的合法数字部分,如果以非数字开头,则返回NaN。
2、parseInt()仅返回整数值的区别,而Number()返回包括浮点的所有数字。