美文网首页JS学习笔记
JS中的数据类型转换(1)

JS中的数据类型转换(1)

作者: zh2443 | 来源:发表于2018-10-14 20:32 被阅读0次

    js中的数据类型转换,一般都是将一种类型的数据转换为number,string和boolean这三种基本类型,包括显式类型转换和隐式类型转换。本章介绍基本类型到基本类型的转换,对象转换为基本类型的介绍将另开一章。

    显式类型转换

        a. 转换为boolean值

        通过Boolean()函数,转换为布尔值,规则为:除了0,NaN,false,undefined,null,‘’ 转为false,其他的所有值都转换为true。


        b. 转换为number值

        转换为数值类型时,有三种方式:Number(),parseInt(),parseFloat()。其中Number()可以将任意类型转换为数值类型,而另外两个则是专门将字符串类型转换为数值。

        Number()的转换规则为:

        parseInt()的转换规则为:

        parseFloat的转换规则为:parseFloat()的转换规则和parseInt()类似,只是会将第一个小数点当做有效值,而它会忽略掉前导的零。parseFloat同样会解析各种数据格式,但是十六进制始终返回0。


        c. 转换为字符串

        转换为字符串有2种方式:toString()方法和String()方法。

        除了null和undefined没有toString()方法,其他的数据类型都有toString()方法,将数字类型转换为字符串时,可以传递一个参数作为基数,表示将十进制的数字转换为该基底的字符串。

        String()方法可以将任意类型的数据转换为字符串,包括undefined和null。

    隐式类型转换

        隐式类型转换大致包括如下几类:

        a. isNaN()

        isNaN函数内部调用Number()函数进行数字的转换

        b. ++,--,+/-(一元正负运算)

        调用Number()转换为数字后再计算

        c. +

        加号中如果两边有一个为字符串,则转换为字符串;如何两边为数字或者布尔值,则进行加法运算,对布尔值,调用Number()方法转换为数字。

        d. -,*,/,%

        调用Number()转换为数字后计算

        e. &&,||,!

        转换为boolean类型

        f. >,<,>=,<=,==,!=

        根据两边的类型进行转换,两边有一个为数字或者布尔值,调用Number()转换为数字后进行数字的比较;都为为字符串,进行字符串的比较;比较特殊的情况:undefined == null,(undefined > 0,undefined < 0,undefined = 0均为false),NaN == NaN为false

    相关文章

      网友评论

        本文标题:JS中的数据类型转换(1)

        本文链接:https://www.haomeiwen.com/subject/oettzftx.html