将其他数据类型转换为Number
方式一:使用Number()函数
- 字符串 -->数字
- 如果是纯数字的字符串,则直接将其转换为数字
- 如果字符串中有非数字的内容转换为NaN
- 如果字符串是空串或是一个全是空格的字符,则转换为0
- 布尔 -->数字
- true 转成 1
- false 转成 0
- null -->数字 0
- undefined -->数字 NaN
方式二:专门用来对付字符串
- parseInt()函数把一个字符串转换为数字
- 将一个字符串中的有效的整数内容取出来,然后转Number
- parseFloat()函数把一个字符串转换为浮点数
- parseFloat()和parseInt()类似,不同的是他可以获得有效的小数
- 如果对非非String使用parseInt()或parseFloat(),他会先将其转换为String然后操作
方式三:运算符的延伸
- 为任意数据类型加一个""空串即可将其转换为String类型
- 通过一个值减去0,乘以1,除以1,来将其转换为Number类型,原理和Number()函数一样,为隐式类型转换。
- 前面加一个正号+可以将任意类型转Number类型
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script type="text/javascript">
/**
* 将其他数据类型转换为Number
* 方式一:
* 使用Number()函数
* 字符串 -->数字
* 1、如果是纯数字的字符串,则直接将其转换为数字
* 2、如果字符串中有非数字的内容转换为NaN
* 3、如果字符串是空串或是一个全是空格的字符,则转换为0
* 布尔 -->数字
* 1、true 转成 1
* 2、false 转成 0
* null -->数字 0
* undefined -->数字 NaN
*
* 方式二:
* 专门用来对付字符串
* parseInt()函数把一个字符串转换为数字
* 将一个字符串中的有效的整数内容取出来,然后转Number
* parseFloat()函数把一个字符串转换为浮点数
* parseFloat()和parseInt()类似,不同的是他可以获得有效的小数
* 如果对非非String使用parseInt()或parseFloat(),他会先将其转换为String然后操作
*
*/
var a = "123";
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
//调用Number()函数来将a转换为Number类型
//String为纯数字
a = Number(a);
console.log("1-----String为纯数字");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
//String有非数字
a = "abc"
a = Number(a);
console.log("2-----String有非数字");
console.log("a的值=" + a+"----"+"a的类型" + typeof a);
//String 为空
a = ""
a = Number(a);
console.log("3-----String 为空");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
//String 全是空格
a = " "
a = Number(a);
console.log("4-----String 全是空格");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
a = false
a = Number(a);
console.log("5-----a是布尔值 false");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
a = true
a = Number(a);
console.log("6-----a是布尔值true");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
a = null
a = Number(a);
console.log("7-----a是null");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
a = undefined
a = Number(a);
console.log("8-----a是undefined");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
a = "123px";
a = parseInt(a);
console.log("9----- parseInt()方法");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
a = "123.456px";
a = parseInt(a);
console.log("10----- parseInt()方法");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
a = "b123";
a = parseInt(a);
console.log("11----- parseInt()方法");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
a = true;
a = parseInt(a);
console.log("12----- parseInt()方法");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
a = 123.456;//a为小数,使用改方法也会取整
a = parseInt(a);
console.log("13----- parseInt()方法");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
a = "123.456px";
a = parseFloat(a);
console.log("14----- parseFloat()方法");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
a = "123.456.789px";
a = parseFloat(a);
console.log("15----- parseFloat()方法");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
a = "ab123.456";
a = parseFloat(a);
console.log("16----- parseFloat()方法");
console.log("a的值=" + a +"----"+"a的类型" + typeof a);
</script>
</head>
<body>
</body>
</html>

版权声明:本文为weixin_43729087原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。