zoukankan      html  css  js  c++  java
  • JavaScript 学习笔记— —数据类型转换

    Js中的数据类型:undefined,string,number,boolen,function,object(null,[],{})

    一、parseInt()和parseFloat()

    parseInt()方法首先查看位置0处的 字符,判断它是否是个有效数字;如果不是,该方法将返回NaN,不再继续执行其他操作。如果第一个字是+或—号同样支持。

    parseInt("1234blue");   //returns   1234 
    parseInt("0xA");   //returns   10 
    parseInt("22.5");   //returns   22 
    parseInt("blue");   //returns   NaN
    parseInt("-100px"); //-100
    parseInt()方法还有基模式,可以把二进制、八进制、十六进制或其他任何进制的字符串转换成整数。基是由parseInt()方法的第二个参数指定的,所以要解析十六进制的值,需如下调用parseInt()方法: 
    parseInt("AF",   16);   //returns   175 
    当然,对二进制、八进制,甚至十进制(默认模式),都可以这样调用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("1234blue");   //returns   1234
    parseFloat("0xA");   //returns   NaN 
    parseFloat("22.5");   //returns   22.5 
    parseFloat("22.34.5");   //returns   22.34 
    parseFloat("0908");   //returns   908 
    parseFloat("blue");   //returns   NaN
    parseFloat("-1234blue");   //returns   -1234

    二、强制类型转换

    Boolean(value)——把给定的值转换成Boolean型; 
    Number(value)——把给定的值转换成数字(可以是整数或浮点数); 
    String(value)——把给定的值转换成字符串。

    Boolean()函数如果该值是空字符串、数字0、undefined或null,它将返回false。

    Boolean("");   //false   –   empty   string 
    Boolean("hi");   //true   –   non-empty   string 
    Boolean(100);   //true   –   non-zero   number 
    Boolean(null);   //false   -   null 
    Boolean(0);   //false   -   zero 
    Boolean(new   Object());   //true   –   object
    Number(false)   0 
    Number(true)   1 
    Number(undefined)   NaN 
    Number(null)   0 
    Number( "5.5 ")   5.5 
    Number( "56 ")   56 
    Number( "5.6.7 ")   NaN 
    Number(new   Object())   NaN 
    Number(100)   100

    最后一种强制类型转换方法String()是最简单的,因为它可把任何值转换成字符串。要执行这种强制类型转换,只需要调用作为参数传递进来的值的 toString()方法,即把1转换成   "1 ",把true转换成 "true ",把false转换成 "false ",依此类推。强制转换成字符串和调用toString()方法的唯一不同之处在于,对null或undefined值强制类型转换可以生成字符串而不引 发错误:

    var   s1   =   String(null);   //"null" 
    var   oNull   =   null; 
    var   s2   =   oNull.toString();   //won’t   work,   causes   an   error

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

    举个小例子,一看,就会明白了。
    <script> 
    var   str= '012.345 '; 
    var   x   =   str-0; 
    x   =   x*1;
    </script>

    原文参考:http://www.cnblogs.com/446557021/archive/2011/10/13/2211043.html

  • 相关阅读:
    麻省理工18年春软件构造课程阅读13“调试”
    麻省理工18年春软件构造课程阅读15“相等”
    麻省理工18年春软件构造课程阅读12“接口与枚举”
    麻省理工18年春软件构造课程阅读11“抽象函数与表示不变量”
    麻省理工18年春软件构造课程阅读10“抽象数据类型”
    麻省理工18年春软件构造课程阅读09“避免调试”
    麻省理工18年春软件构造课程阅读08“可变性与不变性”
    麻省理工18年春软件构造课程阅读07“设计规格说明”
    麻省理工18年春软件构造课程阅读06“规格说明”
    麻省理工18年春软件构造课程阅读05“版本控制”
  • 原文地址:https://www.cnblogs.com/eaysun/p/4390687.html
Copyright © 2011-2022 走看看