每日优鲜
面试题
- 对象深克隆(其中问到深浅克隆的区别,以及对于Function对象的处理
- 从url到页面渲染发生了什么(老生常谈的话题了
- 怎样实现双向绑定(主要是get和set
- BFC,哪些地方有用到
- 加载的优化方式
- 怎样看待前端这个职位
- 实现继承
- 怎样理解原型链
- 闭包是什么,有哪些应用场景
- 做过什么分享
- HTML5有哪些新的api
- 什么是变量提升,let const 和var的区别(牵扯到TDZ
新氧科技
一面
- 万年不变的优化策略问题
- 怎样判断所有的数据类型,instanceof存在哪些问题
- 怎样理解vuex的架构
- vue实现双向绑定的方法,能不能手写一个
- 前端自动化的策略
- 浏览器的缓存机制
- js怎么实现多线程操作(Worker
- http和https区别,Https是绝对安全的么
二面
- 为什么需要做cdn的域名分发
- 为什么会有同源策略
- 跨域解决方案,各有什么优缺点和适用场景
- 从头开始一个新项目,需要怎样做
- 目录结构的划分,技术选型,语言选择(大概只有JS和TS可选,不可能上elm,reason这些
- 移动端的优化方案
- 随机生成10个1-100之间的数,去重之后找出最大的数和最小的数
// 随机生成10个1-100的数
const arr = Array.from({ length: 10 }, () => Math.random() * 100 + 1 >> 0)
// 去重
const newArr = [...new Set(arr)]
// 找出最大和最小数
const maxValue = Math.max(...newArr)
const minValue = Math.min(...newArr)
后记
总体来说今天这两次面试还是非常简单的,都是些基础的问题(可能就找个应届生,或者看我长得像应届生?
薪资这块不好谈,可能看我太年轻了,也没做多久,当不了管理层的话估计也就不会给很多钱吧