js数据类型转换(reset)
发布日期:2022-02-08 04:20:55 浏览次数:4 分类:技术文章

本文共 2552 字,大约阅读时间需要 8 分钟。

字符型 数值型 布尔型 undefined null object

>> 整型

  • 转换后的值:整数、浮点数、NaN(非数值的数值型)
  • 各种类型的内容转化后的数值:
    • Number(值);常用转化方式.

      var a=5; //5 本来就是数字哈,没必要转换,不过为了统一所有数据类型,还是加上了。

      var a; //NaN undefined

      var a=“4y”; //NaN 字符串中有字符
      var a={e:1,u:3}; //NaN object
      var a=“10”; //10
      var a=“5.49”; //5.49
      var a=true; //1
      var a=false; //0
      var a=null; //0
      var a=""; //0 空字符串
      console.log(Number(a));

    • parseInt(值);

      可以转化字符串,将第一个字母之前的所有数字字符转化为数值;

      var b=“1a”; //1

      var b=“12.15f”; //12
      var b=""; //NaN
      var b=“s112”; //NaN
      var b=true; //NaN
      var b=false; //NaN
      var b; //NaN
      var b=null; //NaN
      var b={e:2}; //NaN
      console.log(parseInt(b));

    • parseFloat(值)

      var b=“12.15f”; //12.15

      …其他都同上
      console.log(parseFloat(b));

    • parseInt(要转换的内容,该内容是什么进制)其他进制转换成十进制

      var c=1010; //10

      var c=“1001”; //9
      console.log(parseInt(c,2)); //二进制数—>十进制数
      var c=“ff”; //255
      console.log(parseInt(c,16)); //十六进制数—>十进制数
      var c=1000; //512
      var c=“1001”; //513
      console.log(parseInt(c,8)); //八进制数—>十进制数

>> 字符型

  • 转换后的值:字符串(原样打印,字体变成黑色)、[object Object](Object独享)
  • 各种类型的内容转化后的数值:
    • String(值);

      var d=“hello”; //又是他本身哈

      var d=""; //就是空字符串啦

      甭管几进制,先把所有数值转化为10进制再转化为字符串,有这么一个过程.

      var d=100; //100(黑色 ;控制台黑色是字符串,蓝色是数值)

      var d=123.3 //123.3
      var d=0; //0
      var d=0xFF; //255
      var d=3.184e+3; //3184 科学计数法

      原样打印

      var d; //undefined

      var d=true; //true
      var d=false; //false
      var d=null; //null
      var d={i:1}; //[object Object]
      console.log(String(d));

  • 其他转换方式
    • 进制转换

      e.toString(按照什么进制转换为字符串);

      var e = 9; //1001
      console.log(e.toString(2)); // 十进制数 —> 2~36 之间的任意进制数, 默认是10进制

    • 日期格式

      var e = new Date();

      console.log(e.toString()); //Thu Dec 26 2019 20:01:49 GMT+0800 (中国标准时间) ;
      console.log(e.toLocaleString()); //2019/12/26 下午8:03:09 ;转换为本地字符串;
      console.log(e.toUTCString()); //Thu, 26 Dec 2019 12:03:09 GMT ; 转换为格林尼治时间字符串;

    • toFixed toPrecision toExponential 都是针对数值转换,不能直接操作字符串,转换后为string类型

      var f = 12.34;

      console.log(f.toFixed(4)); //12.3400 保留0~100之间的小数,自动四舍五入;默认为保留0位
      console.log(f.toPrecision(1)); //1e+1
      console.log(f.toPrecision(3)); //12.3 总共保留几位,取值1~100之间,自动四舍五入or科学计数法
      console.log(f.toExponential(3)); //1.23e+1 小数点后保留几位,取值0~100之间,不会自动四舍五入,一定科学计数法

>>布尔型

  • 转换后的值:true 、false
  • 各种类型的内容转化后的数值:

    var g = “”; //false

    var g = 0; //false
    var g = false; //false
    var g = undefined; //false
    var g = null; //fasle
    var g = NaN; //false
    console.log(Boolean(g));
    PS: “”、 0、 undefined、 null、 NaN、 false ,转换为布尔值都是false ;
    除了这六种情况以外,其余转换为Boolean值包括对象,其取值都为true.

>>强转为对象类型

  • 转换后的值:基本上是将数据类型和值输出

  • 各种类型的内容转化后的数值:

    var h = null; //{} null本来偶就是object类型的

    var h = {a:1}; //{a: 1} object类型,没必要转嘛

    var h = “”; //String {""}

    var h = -1; //Number {-1}
    var h = true; //Boolean {true}
    var h; //{}
    console.log(Object(h));

转载地址:https://blog.csdn.net/weixin_43297321/article/details/103718672 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:垂直居中的又一种方法(补充)
下一篇:运算符(review)

发表评论

最新留言

关注你微信了!
[***.104.42.241]2024年04月17日 13时24分55秒