美文网首页
js常用类型转换(简单)

js常用类型转换(简单)

作者: 晓晓_1931 | 来源:发表于2022-11-08 09:01 被阅读0次
            //typeof 获取数据类型
            console.log(typeof a);    //number数字类型:任何数字(NaN也是number类型,表示“非数”)
            console.log(typeof b);    //string字符串类型:值用引号(单引号或者双引号)括起来
            
            let c = true;
            console.log(typeof c);    //boolean布尔类型:值为true/false
            
            var d ;
            console.log(typeof d);    //undefined(没有初始值的变量) 未定义类型:未被赋值的变量,值为undefined
            
            var date = new Date();
            console.log(typeof date); //object对象类型:null、数组、Date等
            
            var nn = null;
            console.log(typeof nn);   //object

            var num = [];
            console.log(typeof num);  //返回object
            
            function get(){}
            console.log(typeof get);  //返回function
            
            console.log(10/0);        //Infinity无穷,是一个特殊的值


            var e = '123.2';
            console.log(typeof e);      //string
            e = parseInt(e);            //将string转换为number  (整数)
            //e = parseFloat(e);        //将string转换为number  (浮点数)
            console.log(e);
            console.log(typeof e);      //number
            
            var g = 'gg';               //字符串中不包含数字
            console.log(parseInt(g));   //NaN(不是一个数)  不会报错
            
            var n = 123 + NaN;
            console.log(n);             //NaN和任何数据进行运算结果仍然是NaN
            
            console.log(1 == NaN);      //所以尽量不这么用判断
            isNaN(1)                    //用这种方式判断
            
            //isNaN()函数在接收到一个值之后,会尝试将这个值转换为数值,如果可以转就返回false:
            console.log(isNaN(5));      //false
            console.log(isNaN('5'));    //false
            console.log(isNaN('a'));    //true
            
            
            var gg = '123px456';
            console.log(parseInt(gg));  //会把首次出现的数字进行截取转换
            
            var h = 0.1 + 0.2;          //浮点数运算也会有精度问题
            console.log(h);             //0.30000000000000004
            
            console.log(parseInt('20.2aa')); //20
--------------------------------- 其他类型向string类型转 --------------------------------------------------

            -------------- toString()方式 ------------------
            var a = 123;                //number类型向string类型转化
            console.log(typeof a);      //number
            a = a.toString();           
            console.log(typeof a);      //string
            
            var b = false;              //boolean类型向string类型转化
            console.log(typeof b);      //boolean
            b = b.toString();
            console.log(typeof b);      //string
            console.log(b);             //'false'
            
            var c = null;               //null值向string类型转化
            console.log(typeof c);      //object
            c = c.toString();           //报错 Cannot read property 'toString' of null
              
            var d = undefined;          //undefined值向string类型转化
            d = d.toString();           //报错 Cannot read property 'toString' of undefined
            
            -------------- String()方式 ------------------
            var e = 123;                //number
            e = String(e);               
            console.log(typeof e);      //string
            
            var f = false;              //boolean
            f = String(f);
            console.log(typeof f);      //string
            
            var g = undefined;
            g = String(g);              //可以转
            console.log(typeof g);      //string
            console.log(g);             //"undefined"
            
            var h = null;
            h = String(h);              //可以转
            console.log(typeof h);      //string
            console.log(h);             //'null'
--------------------------------- 其他类型向string转 -----------------------------------


--------------------------------- 其他类型向number转 -----------------------------------
            var a = '123';
            a = parseInt(a);           //string类型转number类型
            console.log(typeof a);     //number
            
            var b = '456';
            b = Number(b);             //string类型转number类型
            console.log(typeof b);     //number
            
            var c = '';
            c = Number(c);             //string类型转number类型
            console.log(typeof c);     //number
            console.log(c);            //空串向number转 值变为0
            
            var d = true;
            d = Number(d);             //boolean类型转number类型
            console.log(typeof d);     //number
            console.log(d);            //boolean向number转 true值为1 false值为0
            
            var e = null;
            e = Number(e);             //null值转number类型
            console.log(typeof e);     //number
            console.log(e);            //null向number转 值为0
            
            var f = undefined;
            f = Number(f);             //undefined值转number类型
            console.log(typeof f);     //number
            console.log(f);            //undefined向number转 值为NaN
            
            var g = NaN;
            g = Number(g);             //NaN值转number类型
            console.log(typeof g);     //number
            console.log(g);            //值还是NaN
--------------------------------- 其他类型向number转 -----------------------------------


--------------------------------- 其他类型向boolean转 -----------------------------------
            var  a = 456.9; 
            a = Boolean(a);         //number类型转boolean类型   
            console.log(typeof a)   //boolean
            console.log(a);         //值true
            
            //var k = 0;
            var k = NaN;            //number
            k = Boolean(k);
            console.log(typeof k);  //boolean
            console.log(k);         //值false 
            //number类型转boolean类型 除了0和NaN值为false之外,其他的数值转换后的值均为true
            
            var b = "123";          //string类型转boolean类型   
            //var b = "";
            b = Boolean(b);
            console.log(typeof b);  //boolean
            console.log(b);         //除了空串值为false之外 其他字符串转换后值true
            
            var n = null;           //null值转boolean类型   
            n = Boolean(n);
            console.log(typeof n);  //boolean
            console.log(n);         //null值向boolean转 值为false
            
            var u = undefined;
            u = Boolean(u);
            console.log(typeof u);  //boolean
            console.log(u);         //undefined向boolean转 值为false
--------------------------------- 其他类型向boolean转 -----------------------------------

相关文章

网友评论

      本文标题:js常用类型转换(简单)

      本文链接:https://www.haomeiwen.com/subject/xckwtdtx.html