写出代码:
1、给定一串乱序且可能其中含有重复的字符串,返回第一个字符串中无重复的字符(例:ababcdedg,返回c),要求时间复杂度为n
复盘:indexOf()及循环、map()、filter等函数时间复杂度都已经是n不能一起用
2、青蛙跳台阶问题,给定n阶台阶,青蛙一次只能跳1步或2步,返回共有几种跳法(例:有3阶台阶,青蛙可以1 1 1的跳,1 2的跳 2 1的跳共有三种跳法)
3、vue中父子组件是如何通信的
4、webpack工作原理
5、vue-router工作原理
6、js中异步函数是如何实现的
二面:
1、vue双向绑定原理
2、浏览器是如何解析js的?同步任务、异步任务(宏任务、微任务)分别有什么
3、promise创建后是立即执行的吗,那为什么它属于微任务
promise中的resolve、reject、then是异步的
4、ajax原理,使用过axios,fetch吗
xmlhttprequest
5、讲下对http的理解、http是由什么组成的,请求头、请求体包含什么?
6、讲下udp
7、数组方法有哪些?map属于什么结构
8、讲下虚拟dom,算法了解吗(diff),vue中带key的和不带key的处理有什么区别
9、平时如何做响应式的(@media媒体查询、rem)、rem可以用作设置字体吗,rem默认浏览器是多大?
浏览器默认1rem = 16px , rem可以用作设置字体大小
10、讲下position有几种属性,都是相对于什么定位的?
写出代码:
1、字符串反转(可用库函数
function reverse(str) {
return str.split('').reverse().join('')
}
2、验证字符串B是否包含在字符串A内(不可使用indexOf())