# 一面

# 自我介绍

# 水平垂直居中

# defer 、async 区别,作用

# 输入url的全过程

# 深拷贝和浅拷贝的区别

# 数据类型(基本类型、引用类型)

# 如何判断类型

# js 装箱加载

没了解过,不知道

# js 运行机制(事件循环)

# 笔试题

const square = v => v * v
const double = v => v * 2
const addOne = v => v + 1

const res = pipe(square, double, addOne)
res(3) // 19;

// 实现 pipe

function pipe() {
	const args = Array.from(arguments)
  const n = args.length
  
  return function(num) {
    if(!n) return null
    return args.reduce((prev, cur) => cur(prev), num)
  }
}

# webpack loader 介绍一下

# hooks 作用

# hooks 和 hoc 的区别

# ts interface 和 type 的区别

# mobx 使用过程介绍一下

# git 说一下

# 首屏优化说一下

# 项目中比较难的困难