前端面试整理

h5

html5 新api  
storage
geolocation
history 
webworker 
indexDB 
websocket
canvas

css3

box-shadow 
border-radius 
rem 
flex
animaion 
transition 
gradient   
calc 
p:nth-child
p:nth-child(2n+0)
p:last-child 
rem布局 flex 

js

  • 基本数据类型,几种 5种 string number(NaN也是) boolean undefined null(es6 symbol)
  • typeof 返回类型
  • NaN === NaN parseInt(null) // NaN parseInt(undefined) // NaN
  • string substr subtring(end非负) slice 区别
  • 创建对象的方式
  • 闭包
  • this的理解
  • 原型链
  • jsonp原理(手写)
  • 判断是一个数组
  • 深拷贝
  • 原生dom操作 创建dom元素 删除dom元素
  • jquery 你觉得jquery有哪些好处 还用过什么工具库
  • 事件委托 事件理解
  • js规范 amd commonjs esm umd
  • requirejs
  • 怎么写jq插件
  • 怎么给数组原型添加方法
  • 怎么合并两个对象
  • 常见的浏览器内核
  • 浏览器的页面加载过程
  • 数据可视化 echart d3
  • js 执行顺序 变量提升
  • bind call apply 的理解
  • 正则表达式

es6

  • es6用法
  • 箭头函数 this ,函数默认值
  • 合并数组 数组去重 数组API
  • 创建10000个数组 new Array(10000).fill(0)
  • Object.assign Object.is
  • promise
  • proxy
  • es6 module和commonjs模块区别

react

  • 谈谈对react的理解
  • react主要的技术特点
  • 有没有用过antd
  • vdom的优势,缺点
  • react性能优化是哪个周期函数
  • 生命周期 componentDidMount 执行几次
  • react 无状态组价
  • redux
  • react-native
  • react props 改变执行的钩子函数
  • react-native ?
  • 函数式编程和面向对象
  • 高阶组件

vue

  • 谈谈对vue的理解
  • vue的项目是前台项目还是后台项目
  • 组件库 mint-ui element-ui iview
  • spa原理
  • 路由实现原理
  • 生命周期
  • keep-alive
  • v-show和v-if 区别
  • 内置过滤器 大小写 首字母大写 手写过滤器
  • vuex 原理
  • {{}} 是怎么编译的
  • angular vue react 的双向绑定原理
  • vue 指令
  • vue 组件
  • vue mixin
  • mvc mvvm
  • 小程序 ?

angular

  • 讲一下angular理解,用的哪个版本 1.2.3.4.5 ?
  • ts
  • angular的数据双向绑定实现
  • ng-if和ng-show
  • factory、service 和 provider 是什么关系?
  • 自定义指令

nodejs

  • node 常用模块
  • eslint
  • babel 一堆
  • express koa
  • npm常用命令
  • 本地安装和全局安装的区别
  • npm 脚本 npm run dev
  • 线程与进程的区别

git svn

  • 怎么维护代码的(git svn)
  • 提交代码的顺序
  • 常用shell命令 mv mkdir touch rm

webpack gulp

  • gulp
  • webpack 是什么
  • 什么是Loader?什么是Plugin
  • 最新版的webpack的功能
  • webpack 优化
  • webpack 自己搭建开发架构

高级

  • 前端优化
  • 内存图
  • 深拷贝的实现
  • 数组降维
  • 设计模式
  • 算法
  • nginx用过没

谈谈你擅长的技术

你可能感兴趣的:(javascript,html5,node.js)