Javascript的隐式转换

本文深入讲解JavaScript中的数据类型,包括原始类型与对象类型的区分及特点。重点介绍了类型间的转换规则,如使用加减运算符进行隐式转换,以及==与===操作符在比较不同数据类型时的行为差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JavaScript的数据类型分为两类

原始类型: number, string, boolean, null, undefined
对象类型: Function, Array, Date ……

一. ‘+’号和’-‘号

var x='The answer is ' + 42     // "The answer is 42"
"37" + 7    //377 number转换成string
"37" -7     //30  string转换成number

巧用+/-规则转换类型
比如:
1. number转换成字符串
    37 + ""     //"37"

2. 字符串转换成数字
    "37" - 0    // 37

二、等于 ==

"1.23" == 1.23      // true
0 == false          // true
null == undefined   // true
new Object() == new Object()    //false
[1,2] == [1,2]      // false

类型相同,同===
类型不同,尝试类型转换和比较:
    null == undefined  // true
    number == string   // string转number
    boolean == ?       // 不论?是什么类型,先把boolean转换成number, true转换为1, false转换为0
    object == number|string  // 尝试对象转为基本类型

三、严格等于 ==

a === b
类型不同,返回false
类型相同:
    null === null
    undefined === undefined
    NaNNaN
    new Objectnew Object
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值