js数据类型转换

一、强制/显式类型转换
主要有Number、String、Boolean三种

  1. Number
    可以将任意类型数据转为number,主要分为简单数据类型、引用数据类型两种
    a. 简单数据类型
    null ➡️ 0,undefined ➡️ NaN,’’ ➡️ 0,123abc ➡️ NaN,number ➡️ number, 非空字符串 ➡️ NaN
    b. 引用数据类型
    Object、Array:先调用valueOf()方法,如果返回简单数据类型,则可,否则再调用toString()方法,如果得到简单数据类型即可,否则报错。
    Date:与Object、Array正好相反;。
    [] ➡️ ‘’ ➡️ 0
  2. String
    可以将任意类型数据转为string,主要分为简单数据类型、引用数据类型两种
    a. 简单数据类型
    null ➡️ ‘null’,undefined ➡️ ‘undefined’,true ➡️ ‘true’,false ➡️ ‘false’
    b. 引用数据类型
    Object、Array:先调用toString()方法,如果返回简单数据类型,则可,否则再调用valueOf()方法,如果得到简单数据类型即可,否则报错。
  3. Boolean
    可以将任意类型数据转为boolean,true ➡️ true,false ➡️ false,除了以下五个,其余全部转为true
    undefined、null、0(包括+0和-0)、NaN、’’(空字符串)
    二、自动/隐式类型转换
    主要有三种情况,自动转为boolean、自动转为数值、自动转为字符串(+、-)
  4. 自动转为boolean
    a. 短路,如:1 && 2 && 3 ➡️ 1,0 && 1 && 2 ➡️ 1
    b. !![] ➡️ false
    c. 三目/元运算
  5. 自动转为数值
    a. 除了加,其他四则运算均转为数值
    b. 一元运算符,+true ➡️ 1
    c.
  6. 自动转为字符串
    a. 只要a和b相加,只要有一个是字符串,那么就会转为字符串
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值