JS的数据类型转换
一、js中的数据类型
Js中的数据类型一共有六种,即number,string,boolean,underfine,null,object。1、Number
Number数据类型指的是数字,包括整型和浮点数。如
var a=1,b=2.0;
2、String
String表示单引号或者双引号包括起来的0及0个以上的字符,可以是字母 、数字、标点、特殊字符、空格、组成。如:
var name = 'yang' console.log(name) // 'yang'
3、Boolean
Boolean布尔类型只有true和false,用于条件判断。如:
var flag = true; if(flag) { console.log('flag is true') }else { console.log('flag is false') }
4、null 和 undefined
null与undefined都可以表示“没有”,含义非常相似
if (!undefined) { console.log('undefined is false');}// undefined is falseif (!null) { console.log('null is false');}// null is falseundefined == null// true
5、object
对象就是一组“键值对”(key-value)的集合,是一种无序的复合数据集合。
var obj = { foo: 'Hello', bar: 'World'};
数据类型的相互转换
1、任意数据类型转字符串
String(x)
String(1)//"1"String(true)//"true"String(null)//"null"String(undefined)//"undefined"String({})//"[Object Object]"
toString(x)
(1).toString() //"1"true.toString() //"true"null.toString() //Uncaught TypeError: Cannot read property 'toString' of null // at:1:6undefined.toString() //Uncaught TypeError: Cannot read property 'toString' of undefined//at :1:11{}.toString() //Uncaught SyntaxError: Unexpected token .({}).toString() //"[object Object]"
特殊用法
1+'' // "1"true+'' // 'true'null+'' // 'null'undefined+'' // 'undefined'{}+'' // 0var o = {}o+ '' //{object Object}
2、任意数据类型转数字
Number(some)parseInt(some)parseFloat(somw)x-0+x
3、任意数据类型转布尔值
Boolean(some)!!some
4、五个falsy值
0 NaN '' null undefined