JS中Number(),parseInt(),parseFloat()和自动…

2018-08-26 17:27:30来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

【参考来源】

  https://www.cnblogs.com/yi0921/p/6196841.html

  https://blog.csdn.net/u010200222/article/details/10282351

【正文内容】

  Number()

-------------------------------------------------------------------------------------
--Number()
--
--
--Boolean值,true->1,false->0。
--
--数字值,整型就是整型,浮点型就是浮点型,科学计数就科学计数
--
--null值,转为0
--
--二进制,八进制,十六进制格式,转为十进制的数值
--
--字符串为空,转为0
--
--字符串中是纯科学计数,数值会直接转为十进制的数值
--
--undefined , 对象 , 数组 ,字符串不为纯数字和科学计数时 返回NaN
------------------------------------------------------------------------------------

    //JS区分0和-0
        var num = 123;
        var num = 123.123;
        var num = 0b10;
        var num = 010;
        var num = 0xff;
        var num = 5e2;
        var num = 5e-2;

        var num = NaN;

        console.log('值: ' , num);
        console.log('类型: ' , typeof(num))

        //NaN本身为false
        //其他类型转为数值失败时都为NaN
        console.log(NaN - 100);
        if(NaN){
            console.log('Yes');
        }else{
            console.log('No');
        }

        //NaN
        var a = '123ad';
        //123
        var a = '123';
        //NaN
        var a = 'f3ad';
        //0
        var a = false;
        //1
        var a = true;
        //NaN
        var a = undefined;
        var a = new Object();
        var a = Array(1,23);

        //1e+124
        var a = 10e123;

        //3
        var a = 0b11;

        //255
        var a = 0xff;

        //1.23
        var a = 1.23;

        //0
        var a = '';

        //1200
        var a = '12e2';

        //0
        var a = null;

        //90
        var a = 0132;

        var n = Number(a);
        console.log(n);

 

parseInt()


-----------------------------------------------------------------------------------------------------------------------------------------
--parseInt()
--
--
--数值正常转化,如果为浮点数,则转为整型,舍弃小数点后的数值
--
--数字开头的字符串,只转换数字整数部分,忽略字母部分
--
--二进制,八进制,十六进制转化时,转化为十进制的数值
--
--科学计数法,能解析时正常解析,不能时返回第一个数字
--
--Boolean,undefined , 对象 , 数组 ,空字符串,字符串开头不为纯数字和科学计数时 返回NaN
----------------------------------------------------------------------------------------------------------------------------------------

        //123
        var a = '123ad';
        //123
        var a = '123';
        //NaN
        var a = 'f3ad';
        //NaN
        var a = false;
        //NaN
        var a = true;
        //NaN
        var a = undefined;
        var a = new Object();

        //13 第一个值
        var a = Array(13,2);

        //3100000能够解析处时正常解析,不能时只返回第一个数字
        var a = 31e5;

        //3
        var a = 0b11;

        //255
        var a = 0xff;

        //1
        var a = 1.23;

        //NaN
        var a = '';

        //12  字符串只返回12e舍弃
        var a = '12e2';

        //NaN
        var a = null;

        //1
        var a = 1.5;

        //90
        var a = 0132;

        var n = parseInt(a);
        console.log(n);

        var a = parseInt("10",2);
        var a = parseInt("FF",16);
        var a = parseInt("10",8);
        console.log(a);

 

 parseFloat()

 


--------------------------------------------------------------------------------------------------------------------------------
--parseFloat()
--
--
--数值正常转化,整型为整型,浮点型为浮点型
--
--数字开头的字符串,只转换数字整数部分,忽略字母部分
--
--二进制,八进制,十六进制转化时,转化为十进制的数值
--
--科学计数法,能解析时正常解析,超出范围则返回Infinity
--
--Boolean,undefined , 对象 , 数组 ,空字符串,字符串开头不为纯数字和科学计数时 返回NaN
--
--不能有多个小数点报语法错误
--------------------------------------------------------------------------------------------------------------------------------

         //123
        var a = '123ad';
        //123
        var a = '123';
        //NaN
        var a = 'f3ad';
        //NaN
        var a = false;
        //NaN
        var a = true;
        //NaN
        var a = undefined;
        var a = new Object();

        //13 第一个值
        var a = Array(13,2);

        //3100000 范围过大将转为科学计数法再大将为Infinity
        var a = 31e5;

        //3
        var a = 0b11;

        //255
        var a = 0xff;

        //1.23
        var a = 1.23;

        //NaN
        var a = '';

        //1200
        var a = '12e2aa';

        //NaN
        var a = null;

        //1.5
        var a = 1.5;

        //90
        var a = 0132;

        //
        var a = 1.113;

        var n = parseFloat(a);
        console.log(n);

 

 自动类型转换

   数字类型: 在字符串环境下 隐身转换为字符串  

   字符串类型 在数字环境下,可以隐式转换为字符串中的数字或NaN;

          在布尔环境下,可以隐式转换为true.

    空字符串:在数字环境下可以隐式转换为0;

         在布尔环境下可以隐式转换为false;

        字符串'true': 在数字环境下可以隐式转换位1;布尔为true

    字符串'false': 数字环境为0,布尔位false

     null: 在字符串环境下,转换为'null';

         数字环境下,转换为0,布尔环境下,转为false

     NaN: 在字符串环境下可以隐式转换为'NaN';

       布尔环境下,转换为false

    undefined: 字符串环境下,转换为“undefined”,

          数字环境下,转为NaN,

                 布尔下,转为false

    true: 字符串转为'true',数字环境下转为1

     false: 字符串转为'false',数字环境下转为0

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:JS高度融合入门笔记(一)

下一篇:JS高度融合入门笔记(二)