老徐WEB:js入门学习 - javascript数据类型转换

javascript有多种数据类型,如字符串、数字、布尔等,可以通过typeof语句来查看变量的数据类型。数据类型转换就是数据类型之间相互转换,比如把数字转成字符串、把布尔值转成字符串、把字符串转成数字等,这在工作也是经常碰到的。

在操作数据之前先把数据类型确认一下(不是必须的),然后再进行处理。比如你获取了一个数字5,其实它是字符串类型,只是看着像数字5,然后跟一个数字2进行加法运算。你希望得到的结果是7,实际结果是52,且是字符串类型的。

alert('5' + 2); // 输出52
alert(typeof ('5'+2)); // 输出string

看到这个结果,是否感到不可思议。这时就得用到数据类型转换了,把字符串类型的5转成数字类型的5,然后再进行运算,可以使用Number()、parseInt()来转换。

alert(Number('5') + 2); // 输出7
alert(typeof (Number('5') + 2)); // 输出number

 

有哪些转换形式呢

 

String()可以将数字、变量、布尔、表达式、数组、对象等转成字符串。

String(12);
String(100+12);
var x = 3;String(x);
String(new Date());
String(false);

 

数字、布尔、日期等对象的toString()方法也可以转成字符串。

(12).toString();
false.toString();
(new Date()).toString();

 

Number()可以将字符串转成数字。

Number('123');//123
Number('');//0;
Number('11 22');//0
parseFloat()将字符串转成浮点数。
parseInt()将字符串转成整数。
Number(false); // 0
Number(true); // 1
Number(new Date());//日期转数字
(new Date()).getTime();//转数字

 

 

一元操作符(+)可以将变量转成数字。

var x = '3'; // 字符串
var y = +x; // 数字
var x = 'hello'; // 字符串
var y = +x; // 数字NaN

 

 

自动转换数据类型。

5 + null    // 返回 5        null 转换为 0
"5" + null  // 返回"5null"   null 转换为 "null"
"5" + 1     // 返回 "51"     1 转换为 "1"  
"5" - 1     // 返回 4        "5" 转换为 5

 

 

当尝试输出一个对象或变量时,javascript会自动调用变量对象的toString()方法,将对象或者变量转成字符串。

document.getElementById("demo").innerHTML = myVar;
myVar = {name:"Fjohn"}  // toString 转换为 "[object Object]"
myVar = [1,2,3,4]       // toString 转换为 "1,2,3,4"
myVar = new Date()      // toString 转换为 "Fri Jul 18 2019 09:08:55 GMT+0200"

 

 

上面介绍了数据类型的转换形式及常用的转换方法。

这些方法在工作中经常用到,如果对数据转换不熟,在工作中会碰到一些意想不到的结果。

熟悉了这些转换方法,在工作中会有意识的转换数据类型,得到可信任的结果。

 

勤学苦练,笨鸟先飞。关注【老徐WEB前端开发教程】公众号,听老徐说。

你可能感兴趣的:(老徐WEB前端开发_公众号,javascript入门,javascript数据类型,数据类型转换)