公司在杭州,电面和视频面涉及的知识点非常多。。
1,vue的服务端渲染
首先,普通的vue-cli构建的项目在run build之后,生成的主页其实只有一个<div id="app"></div>
尾部放了多个js文件,此时页面的呈现靠的是什么?答案是js append,js文件负责innerHTML,这也是vue虚拟dom的一大特点,而js又是由浏览器来执行的,所以这种渲染称为浏览器端渲染。这种渲染方式有几个缺点:
- js放在dom结尾,如果js文件过大,那么必然造成页面阻塞。用户体验明显不好。
- 不利于SEO。
- 客户端运行在老的JavaScript引擎上,如ie9以下,会出现不兼容的错误。
vue的服务端渲染 --> SSR服务端渲染。(技术能力没到。。真的有点蒙)
2,vue哪个生命周期操作dom
created:进行ajax请求异步数据的获取、初始化数据
mounted:挂载元素内dom节点的获取 (√)
nextTick:针对单一事件更新数据后立即操作dom (√)
updated:任何数据的更新,如果要做统一的业务逻辑处理
watch:监听具体数据变化,并做相应的处理
3,浏览器缓存机制
4,css垂直居中的多种办法,css伪类的应用,BFC作用及形成
5,常见状态码含义
6,promise的异常捕获
Promise.then(()=>{},(err)=>{
handler(err)
}) //传入两个回调函数,第一个接收resolve的内容,第二个接收err内容
//或者
Promise.then().catch(err=>{
}) //直接.catch
//或者
//使用setTimeout()实际上可以算是异步过程,在异步过程中抛出的错误无法被try..catch所捕获
//最终错误被process.on('unhandledRejection')所捕获。
7,字符串转化为数字
- 通过转换函数
parseInt(str)
//parseInt接受的第二个参数可以指定要以什么基数来解析,解析成十六进制还是十进制(默认或传入0都为十进制) parseInt若解析以非数字开头的字符串会返回NaN,否则返回离下一个非数字之前的所有的数字,若为小数则只返回整数部分 - Number 强制转换
Number(str) 当str中有非数字的字符串时,返回NaN - 利用js变量弱类型转换
var num = str * 1
网友评论