美文网首页
28、JS的数据类型

28、JS的数据类型

作者: IUVO | 来源:发表于2017-11-17 16:02 被阅读9次
    html有标签类型:
        block   inline   inline-block   table   list
        不同类型显示效果不同
    
    同样JS也有数据类型(ECMAScript定义的JavaScript的核心标准)
        数字     number     var i = 0;
        字符串   string     var str = 'im string';
        布尔     boolean    var b = true;
        函数     function   var fn1 = function() {};
        对象     object
                    数组    var arrayS = [];
                    json   var aJson = {};
                    元素    var oDiv = document.getElementsByTagName('div')[0];
                    null   var nullobj = null;
        未定义   undefined   var a; /  var a = undefined;
        null    object   var nullobj = null;
    
        获取数据类型:typeof
    
    数据类型转换:
        1.强制类型转换
            Number();
                可以转换纯数字的字符串,不可以转换不是纯数字的字符串,否则会出现NaN,支持小数
            parseInt();
                可以转换不是纯数字的字符串,从第0位开始的一直读取到不是数字(包括小数点)为止的地方截取并转换为数字,不支持小数
                但是如果第0位开始就不是数字的,就会出现NaN
            parseFloat();
                可以转换不是纯数字的字符串,从第0位开始的一直读取到不是数字的位置或者后面都是0的那一串的第一个0的位置为止的地方截取并转换为数字,支持小数
                但是如果第0位开始就不是数字的,就会出现NaN
    
    
            NaN ( Not a Number )
                其他数据类型转换为数字类型错误时,或者运算出问题,结果就会是一个不是数字的数字类型
    
        2.隐式类型转换
            隐式类型转换最直观的一个例子:
                字符串 + 数值 = 字符串
                加号把数值隐式转换为字符串类型,包括对象等数据类型都会被转换隐式转换为字符串
    
                字符串 - 数值 = 数值
                减号把字符串隐式转换成数值类型,支持整数、小数,但是如果字符串不是纯数字,那么就会变成NaN类型,但是NaN类型也是Number类型,也属于隐式转化了类型
                (Tips:包括 * / % -- ++ > < 操作,都会隐式转换为Number类型)
    
                !取反操作,会把右边的数据转换为布尔值
                当字符串和字符串进行比较的时候,会逐个比较
    
                ==仅判断值是否相等,如果字符串和数值做判等,那么字符串会隐式转成数值做比较
                ===不仅判断值,还判断类型是否相等
    

    相关文章

      网友评论

          本文标题:28、JS的数据类型

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