zoukankan      html  css  js  c++  java
  • js面试题知识点全解(一变量类型和计算)

    1.js中使用typeof能得到哪些类型

    2.何时使用=====

    3.js中的内置函数

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

    5.如何理解json

    以下对这些问题的知识点做一些总结:

    1.考点:js变量类型

     1 typeof undefined //undefined
     2 typeof 'killua' //string
     3 typeof 215 //number
     4 typeof true //boolean
     5 typeof {} //object
     6 typeof [] //object
     7 typeof null //object
     8 typeof console.log //function
     9 
    10 // typeof运算符6种类型:
    11 // undefined,string,number,boolean,object,function
    12 // 前4个是值类型,后4个是引用类型,typeof只能区分值类型的详细类型,对引用类型无法区分,只能区分function类型
     

    2.值类型:每个变量可以存储自己的值,不会相互影响

    var a=100;
        var b=a;
        a=200;
        console.log(b);//100

       引用类型(对象,数组,函数):可以无限扩张属性,内存公用空间

    var c={age:10};
        var d=c; //age是一份,只是d和c同时都指向它
        d.age=20;
        console.log(c.age);//20

     3.变量计算-强制类型转换

    // 1.字符串拼接
            var a=100+10//110
            var b=100+'10'//10010,number转换为string
        // 2.运算符
            100=='100'//true
            0==''//true,都可以转换为false
            null==undefined //true,都可以转换为false
    
        //if语句
            var a=true;
            if(a){
    
            }
            var b=100;
            if(b){
                //把b强制转换为布尔类型
            }
            var c='';
            if(c){
                //把c空字符串转换为false
            }
        //逻辑运算符-与、或、非
            console.log(10 && 0) //0, 10转换为true, true && 0返回0
            console.log('' || 'abc') //'abc', ''转换为false
            console.log(!window.abc) //true, window.abc返回为undefined,非false为true
    
        //判断一个变量会被当作true还是false
            var cc=100;
            console.log(!!cc);

    4.变量计算-强制类型转换

    // 1.字符串拼接
            var a=100+10//110
            var b=100+'10'//10010,number转换为string
        // 2.运算符
            100=='100'//true
            0==''//true,都可以转换为false
            null==undefined //true,都可以转换为false
    
        //if语句
            var a=true;
            if(a){
    
            }
            var b=100;
            if(b){
                //把b强制转换为布尔类型
            }
            var c='';
            if(c){
                //把c空字符串转换为false
            }
        //逻辑运算符-与、或、非
            console.log(10 && 0) //0, 10转换为true, true && 0返回0
            console.log('' || 'abc') //'abc', ''转换为false
            console.log(!window.abc) //true, window.abc返回为undefined,非false为true
    
        //判断一个变量会被当作true还是false
            var cc=100;
            console.log(!!cc);

    问:何时使用===和==

    if(obj.a==null){
            //这里 相当于obj.a==null || obj.a==undefined,简写形式(jquery源码推荐的写法)
            //除了这个,其他地方全用===
        }

    问:js中的内置函数 --数据封装对象

        Object
        Array
        Boolean
        Number
        String
        Function
        Date
        RegExp
        Error

    问:js变量按存储方式区分为哪些类型,并描述其特点

    // 值类型,每个变量可以存储自己的值,不会相互影响
        var a=100;
        var b=a;
        a=200;
        console.log(b);//100
        //引用类型(对象,数组,函数),c和d同时指向age:10,
        //可以无限扩张属性,内存公用空间(如果属性比较多,内存公用就会比较方便,所以要引用类型),互相会受干扰
        var c={age:10};
        var d=c;//age是一份,只是d和c同时都指向它
        d.age=20;
        console.log(c.age);//20

    问:如何理解json

        //json 是内置在js语法里的对象,也是一种数据格式,json有两个API
        JSON.stingify({a:10,b:20}) //把对象变换成字符串
        JSON.parse('{"a":10,"b":20}') //把字符串变换成对象
  • 相关阅读:
    开发人员创建智能客户端的十大理由
    OpenStack 学习资料总结
    VirtualBox启用嵌套VTx/AMDV
    element ui table 表尾合计行 错位优化
    群友酒方,夜夜十次郎
    跨域 Better
    Unity 重命名一个字段,同时不丢失其序列化的值
    C++ static 变量
    编译安装apache2.4
    centos设置crontab定时执行shell脚本
  • 原文地址:https://www.cnblogs.com/chooper/p/7388600.html
Copyright © 2011-2022 走看看