【前端精进之路】JS篇:第1期 数据类型总结_function 的 tostring() 函数返回值为函数的文本定义(1)

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

typeof undefined //undefined
typeof null //object

  • 在需要进行数值类型的转换时,undefined会转换为NaN,无法参与计算;null会转换为0,可以参与计算。
undefined + 0 //NaN
null + 0 //0

  • 无论在什么情况下都没有必要将一个变量显式设置为undefined。如果需要定义某个变量来保存将来要使用的对象,应该将其初始化为null。这样不仅能将null作为空对象指针的惯例,还有助于区分null和undefined。

Boolean

Boolean的字面值只有两个,分别是true和false,它们是区分大小写的,其他值(如True和False)并不是Boolean类型的值。

其他类型转换为Boolean类型规则
  • String类型

    • 空字符串""或者’'(即双引号或单引号)都会转换为false
    • 任何非空字符串都会转换为true,包括只有空格的字符串""
  • Number类型

    • 0 和 NaN 会转换为false。
    • 除了0和NaN以外,都会转换为true,包括表示无穷大和无穷小的Infinity和-Infinity。
  • Object类型

    • 当object为null时,会转换为false。
    • 如果object不为null,则都会转换为true,包括空对象{}。
    • 任何Function类型的值都会转换为true
  • Null 和 Undefined 都会转换为 false

总结:undefined、null、false、+0、-0、NaN、“”、‘’ 会转换为false

Number

其他类型转换为Number类型规则
  • Boolean类型:true转换为1,false转换为0

  • Null类型: Null类型只有一个字面值null,直接转换为0。

  • Undefined类型: Undefined类型只有一个字面值undefined,直接转换为NaN。

  • String类型:

    • 如果字符串中只包含数字,则会转换成十进制数;如果前面有0,会直接省略掉,例如"0123"会转换为123
    • 如果字符串中包含的是有效的浮点数,则同样按照十进制转换,例如"1.23"会转换为1.23
    • 如果字符串中包含有效的十六进制格式,则会按照十进制转换,例如"0x3f"会转换为63
    • 如果是空字符串,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值