js中数据类型的转换(Number、String、Boolean)

数据类型的转换

其他数据类型转Number

  1. undefined转Number为NaN

  2. null转Number为0

  3. 布尔值------ true为1,false为0

  4. 字符串

    1. 空字符串,空格字符串转为0
    2. 非空字符串,并且内容为纯数字(包含进制与科学表示法)转成对应的数字
    3. 其余都是NaN
  5. 数字 ----- 原来的数字

  6. 对象

    1. 对象、函数转为NaN
    2. 空数组转为0,数组里只有一个数据并且这个数据能转成数字,则转成对应的数字,其它都转成NaN
console.log(
            Number(undefined),		//NaN
            Number(null),			//0

            Number(true),			//1
            Number(false),			//0

            Number(''),				//0
            Number(' '),			//0


            Number('12'),			//12
            Number('012'),			//12
            Number('0xff90'),		//65424--16进制
            Number('5e5'),			//500000--科学计数法
            Number('k'),			//NaN
            
            Number({}),				//NaN
            Number([]),				//0
            Number(function(){}),	//NaN
            Number(['']),			//0
            Number([2]),			//2
            Number(['2']),			//2
            Number([2,3]),			//NaN
        );

其他数据类型转String

  1. 基本数据类型、null、undefined的结果就是给数据加上引号变成字符串

  2. 对象

    1. 数组的结果为把所有中括号去掉,外面加个引号

    2. 对象的结果为’[object Object]’

    3. 函数的结果为在函数整体外面加个引号

console.log(
	String(null),			//'null'
	String([1,[2]]),		//'1,2'
	String(function(){}),	//'function(){}'
	String({}),				//'[object Object]'
			);

其他数据类型转Boolean

  1. undefined转Boolean为false

  2. null 转Boolean为false

  3. 数字----- +0、-0、NaN转布尔值的结果为false,其它的转布尔值的结果为true

  4. 布尔值转为对应的值

  5. 字符串------空字符串转布尔值的结果为false,其它(包括空格字符串)的都转成true

  6. 对象转布尔值都是true

console.log(
	Boolean(''),		//false
	Boolean(' '),		//true
    Boolean('0'),		//true
    Boolean(undefined), //false
    Boolean(null),      //false
    Boolean(-0),        //false
    Boolean({}),        //true
    Boolean([]),        //true

);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值