240 发简信
IP属地:福建
  • tcp

    UDP和TCP的区别是什么? 握手数据传输之前,UDP不需要握手,TCP需要握手 准确性UDP不保证有序和不丢失;TCP数据可靠性比较强 实时性UDP实时性比较好,TCP实时...

  • vue进阶

    在compile阶段,会通过 el.attributes 来获取所有的attributes,并且通过正则匹配name的方式筛选出类似 v-xxx 的指令,生成一个指令的描述 ...

  • Vue基础

    如何实现组件通信 父子通信 props & emit v-model sync children 兄弟通信 this.children 通用方法 vuex event Bus...

  • 120
    DOM

    DOM级别 DOM0 通过元素的事件属性(onclick)来进行绑定处理函数 DOM2(DOM标准中没有定义DOM1) 通过addEventLinstner来绑定处理函数。 ...

  • 0.1 + 0.2 != 0.3

    原因 十进制转成二进制时,尾数最多只能保留53位,0.1和0.2转成二进制时,都是无限循环,会被截取。最后导致了精度丢失。 解决方法 补课 浮点数转二进制

  • instanceof

    用法 实现 寻找left的对象中的原型链中是否存在right函数的原型对象(right.prototype)

  • 精彩文章推荐

    深入了解JS重点难点讲的蛮精彩,由浅入深

  • new

    什么是new操作符 new会生成一个实例对象,该对象的this指向该实例 实现一个new操作符

  • 实现call、apply、bind

    使用方法 Call Apply Bind thisArg 当不传、为null、undefine时,this指向window 传递的是函数时,this指向该函数的引用 传递的是...

  • 事件机制

    什么是进程?什么是线程?JS为什么是单线程? 进程是一个个线程组成的。例如,打开一个网页 (进程),同时就会启动很多线程。JS引擎线程、UI渲染线程、Http请求线程。 JS...

  • 异步编程(二)

    setTimeout setTimeout设置的时间一定准确吗?为什么 不一定。 setTimeout是异步函数,会被放入到任务队列中去。只有当前的主任务执行完成后,才会去读...

  • 异步编程(一)

    什么是并行?什么是并发? 比如有多个任务需要处理 并发:一个处理器,允许交替执行任务,但是只能同时执行一个任务。 并行:多个处理器,同时执行多个任务 什么是generator...

  • 模块化

    为什么要使用模块化 解决命名冲突的问题 提高复用性 提高代码的可维护性 演变 立刻执行函数 amd、cmd commonJS es module

  • Proxy

    Object.defineProperty 使用语法 响应式原理 主要是在set出发的时候,去更新视图。 将以上代码封装成一个watch函数 proxy 什么是Proxy 可...

  • 原型与继承

    什么是继承? 继承父级的属性和方法和共享(原型链)的属性和方法 组合继承 通过原型链继承共享的方法和属性;通过构造函数继承父级的方法和属性 上面的方法有个缺点:Son的原型上...

  • let const var

    变量提升 函数会优先于变量提升; 函数提升会把整个函数移到作用域顶部 变量提升智慧把变量的定义移到作用域顶部 window var定义在全局时,会挂在window下 let ...

  • 原型

    前置知识 只有函数才有prototype(原型)属性。当函数创建后,会自动添加这个prototype。 每个对象都有proto属性,proto指向构造函数的原型对象 原型对象...

  • 深浅拷贝

    前置知识 基本类型直接存储于栈内存中对象类型的值存储于堆内存中,对象的属性值存储的只是它的堆内存的地址(指针)。 什么是浅拷贝?什么是深拷贝? 深浅拷贝主要是针对于对象类型 ...

个人介绍
想学产品思维的程序员