zoukankan      html  css  js  c++  java
  • 常用的JS数据类型转换方法

    JS 数据类型转换的方法有以下3种:
    1)使用转换函数
    2)强制类型转换
    3)利用js变量弱类型特性进行转换


    1:js提供了parseInt()和parseFloat()这两个转换函数。

    这里输入内容parseInt() 将字符串转换为int型。
    parseFloat() 则是转换为float型。
    parseInt() 在转换过程中,会从字符串 位置0开始判断 该字符是否为有效数字,如果不是 返回 NaN(Not a Number)
    如果是,则继续判断位置1,以此类推。
    例:
    parseInt("256blue"); //return 256
    parseInt("27.5"); //return 27
    parseInt("rr"); //return NaN
    对二进制、八进制,甚至十进制(默认模式),都可以这样调用parseInt()方法:
    parseInt("10", 2); //returns 2
    parseInt("10", 8); //returns 8
    parseInt("10", 10); //returns 10
    如果十进制数包含前导0,那么最好采用基数10,这样才不会意外地得到八进制的值。例如:
    parseInt("010"); //returns 8
    parseInt("010", 8); //returns 8
    parseInt("010", 10); //returns 10
    parseFloat() 在转化过程中类似于parseInt(),从0位置判断是否是有效数字。
    parseInt("256blue"); //return 256.0
    在转换时,该函数会认为第一个小数点是合格的,但是出现多个小数点的时候,从第二个小数点位置开始,后面字符会判断为无效数字。
    例:parseInt("256.45.22"); //return 256.45
    parseFloat()只识别十进制形式的字符串,例如0xA将被识别为 NaN.
    parseFloat("0551")前导0也将被忽略 返回 551
    同时parseFloat()也没有基模式。

    2:强制类型转换


    Boolean(value)——把给定的值转换成Boolean型;
    当要转换的值是至少有一个字符的字符串、非0数字或对象(下一节将讨论这一点)时,Boolean()函数将返回true。如果该值是空字符串、数字0、undefined或null,它将返回false。

    Boolean(""); //false – empty string
    Boolean("hell"); //true – non-empty string
    Boolean(1006); //true – non-zero number
    Boolean(null); //false - null
    Boolean(0); //false - zero
    Boolean(new Object()); //true – object
    Number(value)——把给定的值转换成数字(可以是整数或浮点数);
    Number()的强制类型转换与parseInt()和parseFloat()方法的处理方式相似,只是它转换的是整个值,而不是部分值。还记 得吗,parseInt()和parseFloat() 方法只转换第一个无效字符之前的字符串,因此 "4.5.6 "将被转换为 "4.5 "。用Number()进行强制类型转换, "4.5.6 "将返回NaN,因为整个字符串值不能转换成数字。如果字符串值能被完整地转换,Number()将判断是调用parseInt()方法还是调用 parseFloat()方法。Number(false) 0
    Number(true) 1
    Number(undefined) NaN
    Number(null) 0
    Number( "3.5 ") 3.5
    Number( "36 ") 36
    Number( "5.3.7 ") NaN
    Number(new Object()) NaN
    Number(1004) 1004
    String(value)——把给定的值转换成字符串。
    String()是最简单的,因为它可把任何值转换成字符串。
    toString()方法,即把1转换成 "1 ",把true转换成 "true ",把false转换成 "false ",依此类推。
    String()和toString()的区别是:对null或undefined值强制类型转换String()不报错,toString()报错
    var s1 = String(null);//return null
    var s = null;
    var s2 = s.toString();//error

    3. 利用js变量弱类型特性转换

    <script>
    //eg
    var s= '013.365 ';
    var a= s-0;
        a= a*1;
    </script>
  • 相关阅读:
    北京礼品在线盛大发布
    医生专用手机(智能、导航、名片扫描、医生掌上电子助手)
    医生专用手机/PDA
    DEDE 栏目内容 {dede:field.content/} 输入值不保存解决方法
    礼至上礼品策划中心
    ASP.NET WAP开发
    国内唯一具有智能礼品推荐系统
    招聘发帖兼职人员帖酬高达0.5元/条http://li010.com
    软件文档知多少?
    地高人柳州地区高中校友大联盟 地高校友录,聚会活动,今日地高,母校追忆,校友今朝,职场生涯
  • 原文地址:https://www.cnblogs.com/huhangfei/p/4900464.html
Copyright © 2011-2022 走看看