• 笔记


    post和get的区别

    1.用法不同, post一般是向服务器传输数据,get一般是向服务器获取数据,因为使用url传递数据

    2.传输数据大小不同,post默认无限制传输大小,get不超过2kb

    3.post为隐士传递,get为显示传递

    this的理解

    this是一个关键字,它代表函数运行时自动生成的一个内部函数,只能在函数内部使用

    1.作为纯粹的函数调用this指向全局对象

    2.作为对象的方法调用this指向调用函数

    3.作为构造函数被调用this指向新的对象(new 会改变this 的指向)

    4.apply调用,this指向apply方法的第一个参数

    判断数组

    1.[ ] instanceof  Array   true/false

    2.arr.constructor == Array   true/false

    3.Array.isArray()   true/false

    4.Object.prototype.toString.call([ ]) === '[ Object Array]'  true/false  

    浅克隆

    var lilei = {
    sname: "lilei",
    sage: 20,
    intr() {
    console.log(`我是${this.sname},今年${this.sage}`);
    }
    }
    // lilei.intr()

    function clone(obj) {
    var newObj = {};
    for (var key in obj) {
    newObj[key] = obj[key];
    }
    return newObj;
    }
    var hmm = clone(lilei);
    console.log(hmm);
     
     
    深克隆
    function checkType(data) { // 用来判断被拷贝对象数据类型的函数
         return Object.prototype.toString.call(data).slice(8, -1)
         }
            function deepClone(target) { // 实现深度拷贝的函数
    var result, targetType = checkType(target);//Array Object
    if (targetType === 'Object') { // 只有对象和数组才进行深度拷贝
    result = {}
    } else if (targetType === 'Array') {
    result = []
    } else {//如果return 证明target是基本数据类型,并且将整个函数结束了
    return target
    }
    for (var i in target) { // i为对象的key或数组的下标
    //获取属性名为i的属性值
    var value = target[i]
    // 检测当前属性的类型
    var valueType = checkType(value);//String Number Array
    if (valueType === 'Object' || valueType === 'Array') {
    result[i] = deepClone(value) // 当拷贝的对象中还有数组或是对象时进行递归,克隆它们中的内容,直到递归完所有数组或对象为止
    } else {
    result[i] = value
    }
    }
    return result // 返回最终的结果
        }
        var arr = [1,2,{username:"xiaohu"}]
        var arr2 = deepClone(arr)
        arr2[2].username = "dahu"
        console.log(arr)
        console.log(arr2)
  • 相关阅读:
    一般操作
    node express mongodb 数据录入
    express新版本后app.use(express.bodyParser())无效
    npm adduser报错问题
    01demo-mongodb
    Win32汇编--02必须了解的基础知识
    第17章 本书最后将学习什么呢(需要回头学习)
    第十六章 直接定址表(需要回头学)
    指令系统总结
    第十五章 外中断
  • 原文地址:https://www.cnblogs.com/zhanghaifeng123/p/11414131.html
Copyright © 2020-2023  润新知