美文网首页前端基础和面试基础
javascript变量类型和计算

javascript变量类型和计算

作者: 念旧的阿蛮 | 来源:发表于2017-09-17 23:37 被阅读0次

    实例案例

    首先我先来看面试中常见的几道题:

    1、js中使用typeof 能得到那种类型?

    2、何时使用 === 何时使用 ==?

    3、js中有哪些内置函数?

    4、js变量按储存方式区分为哪些类型 并描述其特点?

    5、如何理解json?

    现在先想想怎么回答这几题。

    按储存类型分的两种数据类型

    值类型

    
    // 变量
    
    // 变量计算
    
    // 值类型 vs 引用类型
    
    // typeof运算符详解
    
    // 值类型
    
    vara=100;
    
    varb=a;
    
    a=200;
    
    console.log(b);// 100
    
    // 引用类型
    
    // a 保存的 这个对象的指针 这个指针指向的是这个对象的指针
    
    //  把a付给 b 也吧这个指针指向b
    
    // 引用类型 对象 数组  函数
    
    // 引用类型特点  无限制扩充属性
    
    vara={
    
    age:20
    
    };
    
    varb=a;
    
    b.age=21;
    
    console.log(a.age);//21
    
    

    typeof能得到几种类型的值

    // typeof能得到什么值
            // string number boolean undefined object function
            // typeof 只能区分值类型的详细类型
           console.log(typeof undefined) // undefined
            console.log(typeof 'abc') // string
            console.log(typeof 123) // number
            console.log(typeof true) // boolean
            console.log(typeof {}) // object
            console.log(typeof []) //object
            console.log(typeof undefined) //object
            console.log(typeof null) //object
            console.log(typeof console.log) // function
    
    

    变量类型计算

    // 变量计算
            // 强制类型转换
            // 强制类型转换的情况
            // 字符串拼接  == 运算符   if语句   逻辑运算
    
            // 字符串拼接
            var a = 100 + 10; // 110
            var b = 100 + '10'; // '10010' 转换成 string类型
    
            console.log(a,b);
    
            // == 运算符
            console.log(100 == '100');// true
            console.log(0 == '') //true
            console.log(null == undefined); // true
    
            // if语句
            var c = '';
            if(c){  // 转换成false
                console.log('true')
            }
    
            // 逻辑运算符
            console.log(10 && 0);// 0 10转换成true
            console.log('' && 10);
            console.log(false && 10);
            console.log('' || 'abc');//abc  ''转换成false
            console.log('abc' || '')
            console.log(!window.abc) //true
    
            console.log(true || '123');
            console.log(false || '123');
    
            var a = 100;
            console.log(!!a); //true
    
    

    现在我们解决开头那几题

    //  js中使用typeof 能得到那种类型 
    
            //  何时使用 === 何时使用 ==
            // 答:if(obj.a == null) 这里相当于 obj. == null || obj.a = undefined 简写形式
            //  这里也是jquery源码中推荐的写法
    
    
            // js中有哪些内置函数
            // Object Array Boolean Number String Function Date RegExp Error
    
    
            // js变量按储存方式区分为哪些类型 并描述其特点
            //  值类型和引用类型   值类型可以分块存储在内存空间  
            // 引用类型只存储在一个内存块中
    
    
            // 如何理解json
            // JSON只不过是一个js对象而已
            // JSON.stringify({a:10,b:20})
            // JSON.parse('{"a":10,"b":20}')
            console.log(JSON.stringify({a:10,b:20}))
            console.log(JSON.parse('{"a":10,"b":20}'))
    

    相关文章

      网友评论

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

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