createState函数中的state是利用closure特性吗?


  • 0

    http://huziketang.mangojuice.top/books/react/lesson34
    第三十四课中

    function createStore (reducer) {
      let state = null
      const listeners = []
      const subscribe = (listener) => listeners.push(listener)
      const getState = () => state
      const dispatch = (action) => {
        state = reducer(state, action)
        listeners.forEach((listener) => listener())
      }
      dispatch({}) // 初始化 state
      return { getState, dispatch, subscribe }
    }
    

    createStore函数执行完了,局部变量state并没有被销毁哈,listeners也是,仍然存在于内存中。能理解为利用closure的特性吗?


登录后回复
 

与 ScriptOJ 的连接断开,我们正在尝试重连,请耐心等待