• JS:强制类型转换


    整理了一些常用的强制类型转换方法:

      Number();      //将其他类型强制转化为 number类型
      String();      //将其他类型强制转化为 string类型  (+"")
      Boolean();      //将其他类型强制转化为 boolean类型(true|false)
      ParseInt();      //将其他类型转化为整型(整数)
      ParseFloat();      //将其他类型转化为浮点型(小数)
    

    举例

    1.Number()

    var result = Number("100"); // 纯数字类型的字符串  => 数值
    var result = Number("100a"); // 非纯数字类型的字符串  => NaN
    var result = Number(""); // 空字符串 转化为数字 => 0
    var result = Number(" "); // 空格字符串 转化为数字 => 0
    var result = Number(true); // 转化为数字  1
    var result = Number(false); // 转化为数字  0
    var result = Number(null); // 转化为数字  0
    var result = Number(undefined); // 转化为数字  NaN
    

    2.String()

     //与该方法一个意思 console.log(result, typeof result);
    var result = String(100); // 转化为字符串  "100"
    var result = String(true); // 转化为字符串 "true"
    var result = String(false); // 转化为字符串  "false"
    var result = String(null); // 转化为字符串  "null"
    var result = String(undefined); // 转化为字符串  "undefined"
    

    3、Boolean()

    注意:

    1.只要有实际内容转化为布尔值 都为true, 如果没有实际内容或空内容转化为布尔值都是false;

    2.NaN,0,"",null,undefined 转化为布尔值为false,其他的都为true。(!!空格 和空字符串 不一样,空格是具有实际意义的!空字符串没有)

       // 数字转布尔
    var result = Boolean(2); // 转化为布尔值 =>  true
    var result = Boolean(1); // 转化为布尔值 =>  true
    var result = Boolean(-1); // 转化为布尔值 =>  true
    var result = Boolean(Infinity); // 转化为布尔值 =>  true
    var result = Boolean(0); // 转化为布尔值 =>  false
    var result = Boolean(NaN); // 转化为布尔值 =>  false
    
       // 字符串转布尔
    var result = Boolean("100"); // 转化为布尔值 =>  true
    var result = Boolean("100a"); // 转化为布尔值 =>  true
    var result = Boolean(" "); //空格 转化为布尔值 =>  true
    var result = Boolean(""); //空字符串 转化为布尔值 =>  false
    
      // null  undefined  转布尔
    var result = Boolean(null); //空值 转化为布尔值 =>  false
    var result = Boolean(undefined); //未定义 转化为布尔值 =>  false
    

    4、parseInt() 找到第一个非数字之前的数 将其转化为整数 (变相用法 向下取整)

    var num = parseInt("100px");//100
    var num = parseInt("100.55px");//100
    var num = parseInt(100.55);//100
    var num = parseInt("a100.55px");//NaN
      
    var num = parseInt(true);  //NaN
    var num = parseInt(false);  //NaN
    var num = parseInt(undefined);  //NaN
    var num = parseInt(null);  //NaN
    

    parseInt可以接收第二个参数,用于指定底数(进制数)。如果知道要解析的值是十六进制,那么可以传入16作为第二个参数,以便正确解析:

     var num = parseInt("0xAF",16);      //175
     通过第二个参数,可以极大拓展转换后获得的结果类型。
      var num =parseInt("10", 2);      //2, 按二进制解析
      var num =parseInt("10", 8);      //8, 按八进制解析
      var num =parseInt("10", 10);      //10, 按十进制解析
      var num =parseInt("10", 16);      //16, 按十六进制解析
    

    5、parseFloat() 找到第一个非数字之前的数 将其转化为number类型(保留小数) (变相用法 向下取整) 若字符串表示整数(没有小数点或小数点后面只有0,则返回整数

    var num = parseFloat("100px");//100
    var num = parseFloat("100.55px");//100.55
    var num = parseFloat(100.55);//100.55
    var num = parseFloat("a100.55px");//NaN
    

    ----------------------------------------------------end-----------------------------------------------------------------------------

  • 相关阅读:
    variables _ golang
    values _ golang
    hello world _ golang
    golang
    英语
    ubuntu下安装node、node代码调试
    xampp日常需求
    垂直居中方法总结
    angularJS之ui-router插件(1)
    Sass学习
  • 原文地址:https://www.cnblogs.com/WayToGo-hwd/p/13996480.html
Copyright © 2020-2023  润新知