自我介绍
皮皮鼠
- 看Promise代码说输出顺序
关于 Promise:
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Promise
使用 Promise:
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Using_promises
const promise1 = new Promise((resolve, reject) => {
console.log('promise1')
resolve('resolve1')
})
const promise2 = promise1.then(res => {
console.log(res)
})
console.log('1', promise1);
console.log('2', promise2);
代码执行过程如下:
script是一个宏任务,按照顺序执行这些代码;
首先进入Promise,执行该构造函数中的代码,打印promise1;
碰到resolve函数, 将promise1的状态改变为resolved, 并将结果保存下来;
碰到promise1.then这个微任务,将它放入微任务队列;
promise2是一个新的状态为pending的Promise;
执行同步代码1, 同时打印出promise1的状态是resolved;
执行同步代码2,同时打印出promise2的状态是pending;
宏任务执行完毕,查找微任务队列,发现promise1.then这个微任务且状态为resolved,执行它。
- 怎么理解原型和原型链
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Inheritance_and_the_prototype_chain
prototype 原型量产 父类 子类 继承
前因后果: 原来没有继承extends 所以就是需要用 proto 和 prototype 来实现一个继承
历史 来龙去脉 使用
另一个角度:class extends
蓝图 继承 就是蓝图的蓝图 :原型链
先一两句话总结,然后讲两到三个典型例子,然后再讲和他类似的东西,以及他发展的来龙去脉
这个技术是应用场景是什么,就是为什么需要创造这种东西,然后举例佐证
自己介绍和原型相关的语言实现的方法
类、实例、constructor,三条线
总结
- 强制缓存和协商缓存
- 你认为你在前端方面的优势是什么
卡戎晴海
- 问项目:没有很抠细节,但也问的有点深度
- vue:组件通信、key、computed与watch、生命周期、数据双向绑定,vue里边的key
- 跨域、布局(float, display, overflow, position)、HTTP状态码
跨域:同源限制策略,解决安全问题,自己在自己家串门
- 反问:
对于学习前端的建议 面试结果什么时候出 评价一下面试
tan89点91397037
一面:
- 项目中的收获
- 平时怎么学习的
- 遇到问题怎么解决的
- 盒模型
- 布局的方式
- 如何实现垂直水平居中
- 变量声明有哪些关键字
- let/const解决了哪些var 的问题
- 为什么for循环延时打印,var不会得到想要的结果,let为什么又可以
- 获取元素的方式
- this相关
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/this
- 画一条虚线有什么方法
- vue中自己封装一个组件,需要注意什么问题
二面:
二面就是hr面,hr常规问题
三面:
hr面后又发了测评、来个综合面,主要就问一些项目和学习生活上的问题
济公的小粉丝
一面
- 根据最熟悉的知识进行提问
- flex布局(如何实现头固定,左固定,右适应)
- js原型,继承
- 数据类型
- ajax请求
- jQuery的设计模式
- vue组件通信
- vue生命周期(nextTick在哪个生命周期)
- 遇到的最大困难,如何解决
- 项目中的难点和优化
通用素质面
- 过去1~2年里遇到的困难,收获
- 实习中遇到的困难,收获
- 为什么选择这个行业
凶鸡
- 学校、专业、工作地点选择
- 实践过的项目
- vue的动画有没有用过(没有用过)
- vue路由
- history模式和hash模式区别
- computed和watch区别
- vue的mixin
- vue的数据绑定
- 什么情况下你会使用组件
- 使用组件时如果想要复用事件,怎么复用?(一脸懵逼,直接在写组件时绑定事件???)
- 闭包和其应用场景(应用场景讲的比较抽象面试官不是很满意)
- 数组操作(在头部删除、添加元素,在指定位置删除、添加元素)
- 数组元素是一个含有学生信息的对象,如何按照学生名字排序(当时突然卡壳没想到)
- 如果图片很多,怎么优化请求加载
- 懒加载图片用scroll事件的话怎么可以怎么优化
- 数组去重