美文网首页
JS变量类型和计算

JS变量类型和计算

作者: jrg陈咪咪sunny | 来源:发表于2017-12-06 10:46 被阅读0次

    变量类型

    • 1.值类型 (赋值之间不会相互影响)
    var a = 100
    var b = a
    a = 200
    console.log(b) //100
    
    • 2.引用类型 :对象,数组,函数 (赋值是变量指针,不是真正的拷贝,指向同一个内存块节省空间。赋值之间会相互影响)
      特点:无限扩大属性。
    var a = {age:20}
    var b = a
    b.age = 21
    console.log(a.age) //21
    
    • typeof运算符
    typeof undefined  // undefined
    typeof 'abc'   // string
    typeof 123   // number
    typeof  true   // boolean     以上是值类型
    
    typeof  {}    // object (对象)
    typeof  []   // object (数组)
    typeof  null  // object (空,但他是object类型)
    typeof  console.log  // function (函数)    以上是引用类型
    

    typeof只能区分值类型,区分不了引用类型,function是JS中特殊的级别最高的,可以区分。

    变量计算 - 强制类型转换 (值类型)

    • 1.字符串拼接
    var a= 100 +10   // 110
    var b =100 +'10'  // '10010'
    
    • 2.==运算符
    100 == '100'  // true        将100转成'100'字符串,相等了。
    0 == ' '  // true        0是false,  ' '是false,相等了。
    null == undefined  // true       同上,都相等了。
    

    == 要慎用,如果是===就不一样了。

    • 3.if语句 (会执行boolean类型)
    var  a = true
    if (a) { 
          //  ...true
    }
    var b = 100
    if (b) {
         //  ...true
    }
    var c = ' '
    if (c) {
        //  ...false
    }
    
    • 4.逻辑运算符
    console.log(10 && 0)   // 0  10=true,0=false.返false,0.
    console.log('  ' || 'abc')    // 'abc'  ' '=false,'abc'=true,返true,'abc'
    console.log( !window.abc)   // true   window.abc=undefined,undefined转true.
    
    //判断一个变量被当做true 还是false
    var a = 100
    console.log(!!a)
    

    相关文章

      网友评论

          本文标题:JS变量类型和计算

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