JS隐士转换

本文详细介绍了JavaScript中的基本数据类型,包括字符串、数字、布尔、未定义和空值,以及它们之间的转换规则。重点讲解了隐式转换的情况,如不同类型之间的加减乘除操作,以及如何在条件判断中自动转换为布尔值。此外,还探讨了NaN的特性以及数据类型的检查方法。

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

    基本数据类型
    变量的数据类型根据=右边的的值来确定数据类型
        string字符串型
            值:''都为字符串
                (''为默认初始值_不代表空值null_不给值就是undfind)
                转义字符都是给字符串用,比如数字不能使用转义字符,转义字符可理解为字符转 document.write('asd' + '\\\'\n' + '123') \n这里只会打印一个空格 被html格式化
        number数字型(官方不是值)
            (定义默认初始值要赋值0,不然就是未定义的undefind数据类型) 
            值:整数_浮点数_NaN_Infinity 
                isNAN:判断是非数字的真为true,假为false(NaN非数字)
                Number.Max_VALUE:最大最小值
        Boolean布尔型
            (任何数据类型都可以转化成1,0 true flase)
            值:true_false
        undefined未定义数据类型
            值:undefined_或者不给值
        null 空值
            值:null

        隐式转换
            == === != !== 也会转换
            string
            字符串+任何类型=拼接(字符串)
            string(为非数字的字符串计算结果NaN)-*/number|string|NaN|(true_false)|undefined|null=number|-NaN

            number
                number +-*/ number= number|-NaN
                number +-*/ NaN = NaN
                number + strin g= 拼接
                number -*/ string(数字) = number|-NaN
                number -*/ string(非数字) = NaN
                number +-*/ undefined=NaN
                number +-*/ Boolean(0,1) = number|-NaN
                number +-*/ null(可理解0) = number|-NaN
                NaN
                Infinity

            Boolean
                (只要参与运算就会转化成数字  +字符串不会转)
                (true_false) + string = 拼接(字符串相加都会拼接  +字符串不会转)
                (true_false) -*/ string(数字) = 计算
                (true_false) -*/ string(非数字) = NaN
                (true_false) +-*/ number = number|-NaN
                (true_false) +-*/ undefined = NaN
                (true_false) +-*/ null = number
                (true_false) +-*/ (true_false) = number

            undefined
                undefined +-*/ 数字 = NaN
                undefined +string = 拼接(字符串)
                undefined +string(数字) = NaN
                undefined +-*/ (true_false)= NaN
                undefined +-*/ null = NaN
                undefined +-*/ undefined = NaN
            null
                null + string = 拼接
                null -*/ string(数字) = 计算
                null + string(非数字) = 拼接
                null +-*/ null = number
                null +-*/ number = number|-NaN
                null +-*/ (true_false) = number
                null +-*/ undefined = NaN


            arr[12,13]
                var a='1'
                arr[a]=12

            a++ a--
                var a='1'
                a++=2

        typeof
            undefined
                undefined
                (typeof 未赋值的变量为undefined 未初始化为undefined 未初始化直接输出报错 未声明只赋值是全局变量)
            null(数据类型)
                object(数据类型)

        if for while 都会默认调用boolean()任何数据类型转化布尔值进行真假判断

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值