携程前端二面
前边问小程序,我属于基本上只会用的程度,答得稀碎。
全程大概50分钟。记录一下能记住的问题
项目,水波纹是怎么实现的,循环调用的话是怎么做到不卡死页面的
requestAnimationFrame执行频率,能保证按这个频率执行吗
*canvas如何实现一个中间镂空的矩形
*小程序是怎么实现渲染的,更新的数据渲染视图上怎么知道要修改的
那VUE中是怎么实现的,答了watch和proxy
输入url到渲染的问题
浏览器怎么知道请求到的资源是一个可执行,或说可渲染的文件
状态码有哪些
各种方法的请求有什么区别
问get和post的区别
用this和在原型链上定义的属性有什么不同
垂直居中怎么实现
实现一个缓存类的get和set方法
// 使用object实现一个缓存 DataCache 类,要求包含 get(key) => value 和 set(key, value, ttl) // 方法key 为 string,value 为任意值,ttl 为缓存时长 // 超过10分钟失效 function DataCache() { this.data={} this.get = function(key){ let cur = new Date(), dur if(this.data[key]){ dur = cur - data[key] if(dur<this.data[key].ttl && dur <= 10){ return data[key].value; } } } this.set = function(key, value, ttl){ this.data[key]={} this.data[key].value = value this.data[key].ttl = ttl } }