面试经历
约面试的有6家,由于路程等原因,面试了4家公司,3家给了offer,最后来到了中通服。
下面是部分我与身边朋友的一些面试题总结:
公司名称:佰钧(阿里外包电话一面)
面试题目:
- let const var 区别
js没有块级作用域
请看这样一条规则:在JS函数中的var声明,其作用域是函数体的全部。
在一个for循环里用var,明明已经跳出 for 循环了,却还可以访问到 for 循环内定义的变量 a ,甚至连 i 都可以被放访问到。
● let声明的变量拥有块级作用域。 也就是说用let声明的变量的作用域只是外层块,而不是整个外层函数。let 声明仍然保留了提升特性,但不会盲目提升,在示例一中,通过将var替换为let可以快速修复问题,如果你处处使用let进行声明,就不会遇到类似的bug。
● let声明的全局变量不是全局对象的属性。这就意味着,你不可以通过window.变量名的方式访问这些变量。它们只存在于一个不可见的块的作用域中,这个块理论上是Web页面中运行的所有JS代码的外层块。
● 形如for (let x...)的循环在每次迭代时都为x创建新的绑定。
这是一个非常微妙的区别,拿示例二来说,如果一个for (let...)循环执行多次并且循环保持了一个闭包,那么每个闭包将捕捉一个循环变量的不同值作为副本,而不是所有闭包都捕捉循环变量的同一个值。
所以示例二中,也以通过将var替换为let修复bug。
这种情况适用于现有的三种循环方式:for-of、for-in、以及传统的用分号分隔的类C循环。
● 用let重定义变量会抛出一个语法错误(SyntaxError)。
这个很好理解,用代码说话
上述写法是不允许的,浏览器会报错,因为重复定义了。
** 在这些不同之外,let和var几乎很相似了。举个例子,它们都支持使用逗号分隔声明多重变量,它们也都支持解构特性。 **
const定义的变量不可以修改,而且必须初始化。
- 作用域链
- 数组的方法
- 字符串方法
- foreach与map区别
- react高级组件
- React.Component 和 React.PureComponent 的区别
- React生命周期
- React路由(权限和动态)
- React hook所有的hook都要了解,可能都要问
- Vue Computed 和 Watch 的区别
- $nextTick 原理及作用
- 对性能优化的理解
公司名称:佰钧(阿里外包电话一面)
面试题目:
- ie 和 W3c盒模型
- useMemo
- Json转string 用于function的时候
公司名称:佰钧(阿里外包电话一面)
其它和上面一样
- 在开发中遇到的难点
- 什么是跨域,怎么解决跨域
- 有没有封装过antd组件
- usememo和usecallback的区别
- 对虚拟dom的理解,虚拟dom的对比过程是怎样的
- key的作用
- promise,async/await
- render的实现过程
- mobx的原理,如何实现一个mobx
- 组件之间传参的方式
- 在地址栏输入路径直接进入页面的问题。
公司名称:
面试人:范丽娜
面试题目:
- 说说vuex
- 说说vue-cli
- 说说axios和promise的区别
- three.js的使用
- 你使用过哪些element UI的组件。
公司名称:顶呱呱
面试题目:
- 说哈同步和异步
- 2.数据之间的传参方式都有哪些
- this是如何使用如何指向的
- 如何进行登陆权限的判断
- promise的执行顺序...
公司名称:网阔信息
笔试
- diff算法
- vuex
- 原型链继承,构造器继承区别
- js监听对象属性?
- vue中watch,和watchEffect
- for of改写一个for循环
- 数组合并后倒序
面试问的 - 项目中遇到的问题,怎样解决的
- react父子
- 权限问题
- 最近学了那些新东西
- 什么是继承
- 函数式组件
- 在这些项目中学到了什么
- 对自己的评价
还做了一套逻辑题
复试(会顺着你的答案继续问你)
面向对象,原型,继承
项目经验,遇到的问题
自身有什么规划
公司名称:数智空间(初创公司)
- vue双向数据绑定原理
- Computed 和Watch 区别
- Created 和Mounted 区别
- Vue生命周期
- 新技术有哪些了解
- 对公司有什么想要了解的
公司名称:信升斯
1、 盒模型
2、 防抖与节流
3、 HTML5新特性
4、 Es6新特性
5、 promise async await
6、 git的常用指令
7、 get和post的区别
8、 你用过哪些异步请求
9、 js的数据类型判断方法
10、 弹性布局
11、 webpack
12、 性能优化的方式
13、 如何解决跨域问题
14、 react的动态路由
15、 div的居中方式
16、 深拷贝浅拷贝
公司:久远银海
笔试大题
1 盒子水平垂直居中
2 重绘是什么 回流是什么 怎样会导致重绘 回流
3 js延迟加载的方法
4 减少页面加载的时间方法
5$route和$router的区别
6 vuex的核心概念
7 什么是动态路由 vue-router的动态路由怎么实现
8 promise的理解
面试
1 盒模型
2 如何解决跨域
3 同源策略
4 vue里面路由传值方式 他们之间的区别
5 websoket
6 http的状态码
7 了解h5的哪些api
8 你用过数组中的哪些高阶组件
9 vue的计算属性
公司:小橘科技
电话一面
- 字符串和数组得方法
- css
- div布局
- 数组去重
- 双重for循环的时间复杂度
- 珊格系统
- 在浏览器中输入网址发生了什么
- 高阶组件
- hooks
- 纯函数
- react为什么是单项数据流
- 将数据放在state,props里的判断
- 从拿到ui图到输出代码发生了什么
- mvc,mvvm
- 如何评价前端代码的好坏
- 好的设计理念是什么
公司:中童教育(成都中童儿童教育科技有限公司)
- 画一个vue的生命周期
- vue组件样式冲突了,怎么解决?
- 深度选择器
- 组件之间的双向通信,
- 怎么解决事件冒泡
- tcp三次握手协议
- 怎么解决跨域,前端解决

浙公网安备 33010602011771号