美文网首页
JS里的类型

JS里的类型

作者: 奈_4f97 | 来源:发表于2018-04-20 12:57 被阅读0次

    1.Number
    2.String
    3.Null
    4.undefined
    5.symbol
    6.boolean
    以上都是简单类型
    7.object

    var a=1
    a.toString() //1 转换成字符串
    null undefined 没有toString() api 报错


    null 报错
    undefined 报错

    object 的toString()

    并不是想要的结果

    利用 +' ' 转换成字符串 # + #会尝试把左右都转换成字符串

    image.png

    window.String() 转换字符串

    image.png

    布尔(boolean)

    转换成布尔


    image.png

    取反 任何数取反2次都可得到一个布尔


    等同于上面的效果

    5个特殊值
    number 中 0 NaN false
    string 中空字符串'' false
    null null false
    undefined undefined false
    object 所有的数组函数都是true

    转换为number

    '1' -> 1

    1. number('1')===1
    2. parseInt('1',10)===1
    3. parseFloot('1.23')===1.23
    4. '1'-0
    5. +'1' / + '-1'


    存储

    stack (栈) 简单类型
    number null undefined symbol boolean
    heap(堆) 复杂类型
    object

    GC 垃圾回收

    如果一个对象没有被引用 就是辣鸡 将会被回收

    深拷贝/浅拷贝

    var a=1
    var b=a
    b=2
    b变不影响a (深拷贝)

    var a={ name:'a'}
    var b=a
    b.name='b'
    a.name的值也变成b了 (浅拷贝)

    相关文章

      网友评论

          本文标题:JS里的类型

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