240 发简信
IP属地:浙江
  • 在小程序中使用async-await

    async-await是ES7的语法,截止我写这篇文章为止,小程序还是不支持async-await语法的,所以需要使用regenerator这个库 下载regenerator...

  • react Context

    如何使用context 创建context对象 把想要用context的数据的节点使用context.Provider进行包裹,并且传入对应的数据。 把想要使用context...

  • 120
    重读redux源码

    之前5.1假期的时候,有去读了下redux的源码,当时感触很深,今天重新梳理遍redux的源码:从源码中的src文件夹看起: 从这里可以看出源码主要分为两大块,一块为自定义的...

  • redux中间件源码解析

    它提供了一个分类处理action的机会。在中间件中,可以检阅每个流过的action,挑选出特定类型的action进行相应的操作,提供一次改变action的机会。 通过中间件,...

  • 手写promise

    每个promise都有一个内部属性[[PromiseState]]被用来表示Promise的三种状态,初始化的状态都是pending。 所有的promise都有then()方...

  • 120
    关于react的新生命周期

    在react中旧的生命周期其实已经十分完整,基本可以捕捉到组件更新的每一个state/props/ref,没有什从逻辑上的毛病。 1. 旧的生命周期 当然我们现在,在整个1...

  • 120
    CSS面试必备

    1. 盒模型 页面渲染时,dom 元素所采用的 布局模型。可通过box-sizing进行设置。根据计算宽高的区域可分为: content-box (W3C 标准盒模型) :设...

  • Proxy

    代理(Proxy)是一种可以拦截并改变底层js引擎操作的包装器。它在目标对象之前架设一层“拦截”,外界对该对象的访问,都必须先通过这层拦截,因此提供了一种机制,可以对外界的访...

  • JS的装饰器

    什么是装饰器 在面向对象(OOP)的设计模式中,decorator被称为装饰模式。我们在程序开发中,许多时候并不希望某个类天生就非常庞大,一次性包含许多职责。装饰者模式可以动...

  • 120
    react高阶组件

    首先我们来看下,什么是高阶函数? 函数可以作为参数被传递setTimeout(() => {console.log(1)}, 100); 函数可以作为返回值输出functio...

  • this到底指向哪里呢?

    有时候我们太过于拘泥与“this”的字面意思就会产生一些误解。 1. this是不是指向函数自身呢? show me the code! 问题来了 既然我们this并不指向f...

  • 迭代器与生成器

    为什么我们需要迭代器? 以上代码是我们最为熟悉的一种循环语句了吧,我们通过一个变量i来跟踪数组的索引,但是这种代码有没有问题呢,如果是多个循环嵌套,我们需要使用多个跟踪变量,...

  • Symbol的用法

    在ES5及早期的版本中,语言包含五种原始类型:字符串 数字 布尔 null 和 undefined。ES6引入了第6种原始类型:Symbol。 创建Symbol 创建了一个名...

  • 120
    CSS创建三栏布局方案

    有几种解决方案呢? 1. float方案 实现原理:左右栏分别浮动在窗口两边,且已经脱离文档流,中间块(处于文档流中)受左右浮动影响被卡在中间无法继续向左右伸展已达到自适应。...

  • 页面性能优化

    浏览器的一个请求从发送到返回都经历了什么? 首先用户在浏览器中输入了一个url,浏览器将url解析成domain dns服务器会根据domain去查询相关host对应的ip地...