JavaScript基础 (数据类型的转换)

文章详细介绍了JavaScript中的类型转换,包括显式转换和隐式转换。显式转换涉及Number、String和Boolean函数,强调了转换规则和注意事项,如非数字字符导致的结果为NaN。隐式转换主要在不同数据类型进行运算时发生,如算术运算符会将非数字转换为数字,连接符将非字符串转换为字符串,逻辑非操作符则会转换为布尔值。
摘要由CSDN通过智能技术生成

目录

1.显式类型转换 

         1.转数字类型Number

2.转字符串类型String

3.转布尔类型Boolean 

2 .隐式类型转换 


1.显式类型转换 

特点:程序员转换,阅读性高

 1.转数字类型Number

(常用)其他类型转数字: Number(数据) 

注意点:数据有非数字字符结果就为NaN

字符串转整数: parseInt(数据)    字符串转小数: parseFloat(数据)

应用场景:用来转换带单位的字符串
注意点:数据不能以非数字字符开头 否则结果为NaN

      <script>
        //1.Number() :  其他类型转数字
        //注意点:不能出现非数字字符否则会得到NaN
                                   //打印结果
        console.log(Number('1'))   //1
        console.log(Number('$1'))  //NaN

        /*2.parse语法 : 可以解析字符串中的数字部分,一般用于转换带单位的字符串  "12px"        
        2.1 parseInt() : 转换整数
        2.2 parseFloat() :转换小数
        */
        //注意点:开头位置不能出现非数字字符否则会得到NaN
        //2.1 转整数:  parseInt(数据)      打印结果
        console.log(parseInt('12px'))     //12
        console.log(parseInt('12.5px'))   //12
        console.log(parseInt('$12.5px'))  //NaN
        //2.2 转小数:  parseFloat(数据)
        console.log(parseFloat('12.5px')) //12.5
    </script>

2.转字符串类型String

(常用)其他类型转字符串 : Stying(数据)

变量转字符串 :变量名:.toStying(数据)   用于进制转换

    <script>
        其他类型转字符串
        let num = 200
        //1. String(数据)
        //可以转换undefined 和null
        console.log(String(num))//"200"
        console.log(String(true)) // "true"
        console.log(String(undefined))//"undefined"
        console.log(String(null))//"null"

        //2. 变量名.toString()
        //只能变量名来使用,而且不能转换undefined和null
        //应用:可以实现进制转换(可以把0-255颜色范围转成16进制)
        console.log(num.toString(16))
    </script>

3.转布尔类型Boolean 

转布尔类型: Boolean(数据)         //只有两个值 true(真) false (假)

结果为false情况的取值 :

1、0(数字0,字符串"0"布尔值为true):

2、''   (空的字符串,中间不能有空格否则为true)

3、undefined(未定义值)

4、null(代表空值)

5、NaN(无法计算结果时出现    //typeof NaN==="number")

6、false(布尔值的false)

结果为true情况的取值:

除false之外,其余都为true

例子

    <script>
                                        //打印结果
        console.log(Boolean(0))         //false
        console.log(Boolean(-0))        //false
        console.log(Boolean(''))        //false
        console.log(Boolean(' '))       //true
        console.log(Boolean(NaN))       //false
        console.log(Boolean(undefined)) //false
        console.log(Boolean(null))      //false
        console.log(Boolean(false))     //false
    </script>

2 .隐式类型转换 

 运算两边类型不一样 ,编译器自动转换为相同类型后运算

    <script>
       /* 
       隐式转换 : 当运算符两边的 ‘数据类型不一致’ 的时候,编译器会转成一致后运算
            (1)转换数字 : 算术运算符 + - * / %
            (2)转换字符串 : 连接符+  (+号两边只要有一边是字符串,此时+就是连接符)
            (3)转换布尔: 逻辑非 !    
       */     
       
       //1.转换数字 : 算术运算符     打印结果    转换过程
       console.log( '100' - 10 )   //  90      Number('100') - 10
       console.log( 1 + true )     //  2       1 + Number(true)
       console.log( +'10' )        //  10      +数学正号 Number(10)  
       
       //2.转换字符串 : 连接符
       console.log( '1' + true )   // '1true'  '1' + String('true')

       //3.转换布尔 : !
       console.log( !1 )           //  false   !Boolean(1)
       console.log( !undefined )   //  true    !Boolean(undefined)
    </script>

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值