JavaScript数据类型及转换

JS中的数据类型一共有六种:number,string,boolean,undefined,null和object
其中除了object为复杂(引用)数据类型外,其余都为基本数据
一、number
Number数据类型是数字,可以是整型也可以是浮点数var a=12,b=12.2;
二、string
String数据类型有零个或者多个字符组成,字符串必须放在" "/’ '内
var a='man'或者var a="man"
三、Boolean
布尔数据类型:ture/false
四、undefined
undefined通常是没有赋值的变量,通过typeof可以对数据类型进行判断
var a; console.log(typeof(a));
控制台结果为undefined
五、null
表示空var a=null; //将a清空
六、object
引用数据类型:对象,由属性和方法构成
常见的有array,window,document,date,object




数据类型的查看与转换:
查看:可以使用 typeof 运算符来确定 JavaScript 变量的数据类型。

typeof "Bill"                 // 返回 "string"
typeof 3.14                   // 返回 "number"
typeof NaN                    // 返回 "number"
typeof false                  // 返回 "boolean"
typeof [1,2,3,4]              // 返回 "object"
typeof {name:'Bill', age:62}  // 返回 "object"
typeof new Date()             // 返回 "object"
typeof function () {}         // 返回 "function"
typeof myCar                  // 返回 "undefined" *
typeof null                   // 返回 "object"

请注意:

NaN 的数据类型是数值
数组的数据类型是对象
日期的数据类型是对象
null 的数据类型是对象
未定义变量的数据类型是 undefined
尚未赋值的变量的数据类型也是 undefined

转换:
1、隐性转换;即为自动转换

5 + null    // 返回 5         因为 null 被转换为 0
"5" + null  // 返回 "5null"   因为 null 被转换为  "null"
"5" + 2     // 返回 52        因为 2 被转换为 "2"
"5" - 2     // 返回 3         因为 "5" 被转换为 5
"5" * "2"   // 返回 10        因为 "5" 和 "2" 被转换为 5 和 2

2、强制转换

1》number
	Number();//把字符串转化为数字,空字符串转为0,其他转为NaN(Not a number,不是数字)
		Number("3.14")    // 返回 3.14
		Number(" ")       // 返回 0
		Number("")        // 返回 0
		Number("99 88")   // 返回 NaN
		Number(false)     // 返回 0
		Number(true)      // 返回 1
	parseInt(); //转化为整数
		parseInt("165.541")  //返回165
		parseInt("null")	 //	返回NaN
		parseInt("165sad")   //返回165
	parseFloat();//转化为浮点数
		parseFloat("null")	 //	返回NaN
		parseFloat(null)	 //	返回NaN
		parseFloat("51656.5null")	 //	返回51656.5
	一元+运算符,可把变量转换为数字
		var y = "5";      // y 是字符串
		var x = + y;      // x 是数字
		var y = "Bill";   // y 是字符串
		var x = + y;      // x 是数字 (NaN)
2》string
	String(); //全局方法
		String(x)         // 从数值变量 x 返回字符串
		String(123)       // 从数值文本 123 返回字符串
		String(100 + 23)  // 从表达式中的数值返回字符串
		String(false)        // 返回 "false"
		String(true)         // 返回 "true" 
	函数名.toString() 
		x.toString()
		(123).toString()
		(100 + 23).toString()
		false.toString()     // 返回 "false"
		true.toString()      // 返回 "true"

附表:

原始值转换为数字转换为字符串转换为逻辑Boolean
false0"false"false
true1"true"true
00"0"false
11"1"true
"0"0"0"true
"000"0"000"true
"1"1"1"true
NaNNaN"NaN"false
InfinityInfinity"Infinity"true
-Infinity-Infinity"-Infinity"true
""0""false
"20"20"20"true
"twenty"NaN"twenty"true
[ ]0""true
[20]20"20"true
[10,20]NaN"10,20"true
["twenty"]NaN"twenty"true
["ten","twenty"]NaN"ten,twenty"true
function(){}NaN"function(){}"true
{ }NaN"[object Object]"true
null0"null"false
undefinedNaN"undefined"false
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值