JavaScript | 数据类型转换

  我们的数据类型有很多,在某个页面中展示的数据类型也不同,比如说电话号码我就要求number的类型,而输入姓名的时候就要求string类型的。那么在适当的情况下我们可以将数据类型进行转换。

 

一、将数值类型转换成字符串类型

隐式转换

var n1 = 123;
var n2 = '123';
var n3 = n1+n2;
// 隐式转换
console.log(n3);
console.log(typeof n3);

 网页查看console

由于n2是字符串,遇到加号时,只要有一个字符串,那么就表示拼接字符串,所以最终结果是123123,它的类型是字符串

数值+’’

一个数值和一个空字符串“”拼接就可以转换为字符串

var a = 123;
a = a +' ';
console.log(typeof a);  //string

强制类型转换

var n1 = 123;
// 强制类型转换String(), toString()
var str1 = String(n1);
console.log(typeof str1);
 
var num = 234;
console.log(num.toString()); //对象.方法

 网页查看console

 

二、将字符串类型转换成数值类型

var  stringNum = '789.123wadjhkd';
var num2 Number(stringNum);    //可以转存数值类型的字符串
console.log(num2);
 
// parseInt()可以解析一个字符串 并且返回一个整数
//只保留字符串最开头的数字,后面的直接忽略
console.log(parseInt(stringNum));
//浮点数
console.log(parseFloat(stringNum));

 网页查看console

 

parseInt():字符串转数字

parse表示“转换”,Int表示“整数”(注意Int的拼写)。

parseInt()具有以下特性 

(1)带有自动净化的功能;只保留字符串最开头的数字,后面的中文自动消失。例如:

console.log(parseInt("2018你真帅!!"));

 网页查看console

如果后面还有数字,也会只保留最开头的数字,比如: 

console.log(parseInt("22岁的唐慧茹带着5岁的儿子去逛街"));

 网页查看console

(2)自动带有截断小数的功能:取整,不四舍五入

var a = parseInt(5.8) + parseInt(4.7);
console.log(a);

 网页查看console

var a = parseInt(5.8 + 4.7);  //先计算结果,再取整
console.log(a);

网页查看console

 

三、任何数据类型都可以转换为boolean类型

var b1 = '123';
var b2 = 0;             //false
var b3 = -123;

var b4 = Infinity;
var b5 = NaN;         //false

var b6;              //undefined false
var b7 = null;         //false

// 非0即真
console.log(Boolean(b1));
console.log(Boolean(b2));
console.log(Boolean(b3));
console.log(Boolean(b4));
console.log(Boolean(b5));
console.log(Boolean(b6));
console.log(Boolean(b7));

网页查看console

 

 

 

posted @ 2019-08-24 19:48  PythonGirl  阅读(318)  评论(0)    收藏  举报