Js中parseInt()和Number()之间有什么区别?

时间:2020-11-21
本文章向大家介绍Js中parseInt()和Number()之间有什么区别?,主要包括Js中parseInt()和Number()之间有什么区别?使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

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()返回包括浮点的所有数字。