数据类型转换

// 数据类型:

        // 基础类型:
        // 1.字符型String
        // 被双引号"",单引号'',``所引起来的都是字符型
      /*   var a1="1";
        var a2='2';
        var a3=`5`;//ES6
        var a4="\u4e00"; *///ES6中 双引号中可以放入utf-8的编码
        
        // 快速将数据类型转换为字符串:
        /* var a=10;
        a=a+"";
        console.log(typeof a); */

        // 2.数值型Number
        var a5=3.2e+2;//科学计数法 3.2*10的二次幂 320
        var a6=045;//ES6中废弃
        var a7=0xFF;//16进制
       
        // 快速将数据类型转换成数值:
        /* var a="10.35";
        b=b-0;
        console.log(typeof b); */

        // 3.布尔值Boolean
        // true真/false假

        // 4.Undefined  未定义型,定义了变量没有赋值
        var a7;//定义了变量,没有初始值
        var a8=undefined;


        // 5.空型 null将对象设置为空值 
        var a1=null;


        // 复杂类型:
        // 6.对象型Obiect
        /* 键值对 key:键 value:值 
        键只能是字符型或者symbol型(ES6)如果键不是字符型,则会自动转换为字符型
        值可以是任意类型 */
        var obj={a:1,b:2};
        

        

        

        // 7.NaN数值类型的非数值

        // 8.typeof操作符
        // typeof格式:typeof 常量/变量
        // 功能:输出当前常量或者变量的数据类型
        console.log(typeof typeof undefined);
        // 第一次输出的数据类型为undefined
        // 第二次输出的数据类型为字符串

        // 注:
        // 判断null的数据类型为object



// 1.字符型转换为数值型
        // 字符串只要含有非数字就会转换成NaN(数值类型的非数值),否则转换为数值--叫做强制转换
        a=Number(a);//强制转换为数值型
        // 非数值不等于非数值 

        // 转换为整数型数值,从开始向后转换遇到字符停止(如果开始是数值就可以转换)
        parseInt();//将字符串转化为整型数值
        a=parseInt(a);//NaN
        a=parseInt("4a");//4
        a=parseInt(a4);//NaN
        parseInt();//将字符串按照指定的进制类型转换(第二个参数是进制类型)
        a=parseInt(a,16);//164 将a转换为16进制的整型数值 
        // 第二个参数可以不填,默认转换为10进制,最小转换2,最大转换为36进制
        
        // 转换为浮点数 parseFalse();
        var a=4.25;
        a=parseFloat(a);
        console.log(a);

        var a=100.00;
        a=parseFloat(a);
        console.log(a);//100 会省略00
    
        // 2.布尔值转换为数值
        // 强制转换为数值
        var a=true;//true=1
        a=Number(a);
        console.log(a);//1

        // 3.undefined null转换为数值
        // undefined null转换为数值

        // 4.转换字符串
        // 强制转化为字符串String();

        // 将数值按照指定进制类型转换为字符串 .toString();
        // .toString();默认是转换为字符串
        // .toString(2);参数是进制转换,数值将按照进制转换为字符串,2-36 如果不是2-36的整数,将会报错,小数会向下取整

        // 保留小数点后几位 .toFixed(); 参数0-20 默认参数是0
        // 注:四舍五入 保留一位小数点会有误差 负数时是有Bug
        // 解决小数点后一位误差:先乘一百,取整保留,在除一百

        // 保留数值的数量(科学技术法保留) .toPrecision();
        var a=2555555;
        a=a.toPrecision(2);
        conslole.log(a);

        // 保留几位小数(科学技术法保留) .toSexponential();
        var a=0.0000005;
        a=a.toExponential(2);
        console.log(a);

        // 本地字符串 a.toLocaleString();

        // object转换为字符串 [object Object]
        var a={a=1,b=2};
        a=String(a);
        conslole.log(a)//[object对象 Object对象类型]

        // 空数组转化为字符串:空字符串
        var a=[];
        a=String(a);
        console.log(a);//空字符串

        //数组转换为字符串,直接将数组里的元素转换为字符串

        // 遇到!需要将值转换为布尔值取反,若不是!优先转换为字符
        var arr=[];
        var b=Boolean(arr);
        console.log(![]==[]);//true
        // 空数组转换为字符串是空字符串,空字符串的布尔值false,false=false=》true
        
    
        
        // 5.转换为布尔值
        // 将""(空字符串),0,false,null,undefined,NaN转换成布尔值,都是false,除此之外,都是true。
        // 将数字转换成布尔值:非0即真;
        // 将字符串转换成布尔值:非空即真。
    

        // 6.字符串转换为对象:转换为字符串对象
        var str="abc";
        var o=Object(str);
        console.log(o);

        // 对象转换为数值NaN

        // 所有的隐式转换都是强制转换
  • 1
    点赞
  • 1
    评论
  • 1
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2020 CSDN 皮肤主题: 1024 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值