zoukankan      html  css  js  c++  java
  • 1.数据类型、typeof、深拷贝、变量计算

    1.数据类型:值类型(Number,String,Boolean,undefined),引用类型(object(包含数组),Null),函数
    

      

    2.typeod  判断所有的值类型,函数。引用类型无法区分(都是object)
    

      

    3.深拷贝

    3.深拷贝
            const obj1 = {
                age:20,
                name:'aaa',
                address:{
                    city:'beijing'
                },
                arr:[1,2,3]
            }
            const obj2 = deepClone(obj1);
            obj2.address.city = "shanghai";
            console.log(obj1)
    
            /**
            * 深拷贝
            * @param {Object} obj  要拷贝的对象
            */
            function deepClone(obj){
                if(typeof obj !='object' || obj ==null){
                    return obj;
                }
                // 初始化返回结果
                let newObj
                if(obj instanceOf Array){
                    newObj = [];
                }else{
                    newObj ={};
                }
                for(let i in obj){
                    // 保证key不是原型上的属性
                    if(obj.hasOwnProperty(key)){
                        // 递归
                        newObj[key] = deepClone(obj[key]) 
                    }
                }
                // 返回结果
                return newObj;
            }
    深拷贝

     4.变量计算

    类型转换:
            a.字符串拼接
              let a = 100+10;//120
              let a = 100+'10';//'10010'
              let a = true +'10';//'true10'
            b.==
                100 == '100' //true
                0 == '' //true
                0 == false //true
                false == '' // true
                null == undefined //true
                用 === 的话,都是false
            c.if语句和逻辑运算
                truly变量: !!a === true 的变量
                falsely 变量: !!a === false 的变量
    
                <!-- 以下是falsely 变量。除此之外都是turly变量-->
                    !!0 === false
                    !!NaN === false
                    !!'' === false
                    !!null === false
                    !!undefined == false
                    !!false === false
    
                if(){} //if括号里面的判断就是 turely 和falsely
    

      

  • 相关阅读:
    监督学习——AdaBoost元算法提高分类性能
    监督学习——logistic进行二分类(python)
    监督学习——朴素贝叶斯分类理论与实践
    nrm 工具的使用
    Linux下安装MySQL
    Node环境配置
    07.移动端类库
    06.网页布局
    05.预处理器
    04.触屏事件
  • 原文地址:https://www.cnblogs.com/chenlw/p/12525282.html
Copyright © 2011-2022 走看看