本文是我在学习过程中记录学习的点点滴滴,目的是为了学完之后巩固一下顺便也和大家分享一下,日后忘记了也可以方便快速的复习。
前言
今天学习的主要是关于仿美团app项目的前端面试知识的理解和总结。
一、Node.js
概述:
node是基于谷歌浏览器v8引擎的JavaScript代码的运行环境,它提供了大量的模块,使得我们能够完成对文件的操作、web服务器、数据库的操作等功能。
二、MVVM
概述:
不需要操作dom元素,dom元素(view)与数据(model)之间有监视机制,只要数据发生改变dom元素就会随之改变。
三、单页面应用的优缺点
优点:
1. 页面跳转无需等待页面刷新
2. 完全是前端组件
- 开发人员无需重复开发
- 浏览器无需重复渲染
缺点:
首页加载慢(vue通过使用keep-alive技术来解决这问题)、
渲染慢、SEO效果差(服务器通过渲染技术来解决这问题)
四、虚拟dom结构
概念:
不做真实的dom操作,将dom元素转换成js的形式,用js引擎去计算dom最终的样式,全部计算完毕后再将相应的js转换成相应的dom元素,以此来减少渲染操作减少性能消耗。
解决的问题:
虚拟dom结构解决了:多次的js操作可能会改变dom的值,这就导致dom元素需要多次渲染,浪费浏览器性能。
知识拓展:
浏览器主要有两个重要的引擎:js引擎和渲染引擎。
js引擎:主要解析JavaScript代码。
渲染引擎:主要解析html、css、xml等代码。
五、路由懒加载
概念:
根据需要再导入组件,不用该路由不加载该组件,从而提高性能。
六、路由嵌套
概念:
一个页面的某个位置根据点击的链接不同展示不同的组件。
七、动态路由
概念:
多个路由对应一个组件,根据路由配置id不同,获取不同的参数,再进行相应的处理。
七、路由模式的原理
概念:
路由模式有两种:hash模式和history模式。
两种模式都不会触发页面刷新。
hash模式(类似:/#/****):
通过监听浏览器地址的hash值的变化,执行相应的js切换网页。
改变url的方式:a标签,js修改url,手动修改url,浏览器的前进后退。
监听路由的方式:window.onhashchange事件
history模式(类似:/***/***):
需要后端配合使用 ,因为这种模式的url写法会向后端发送
请求,但是后端不会返回东西。
改变url的方式:history.pushstate
监听路由的方式:window.onpopstate
💕 原创不易,还希望各位大佬支持一下 \textcolor{blue}{原创不易,还希望各位大佬支持一下} 原创不易,还希望各位大佬支持一下
👍 点赞,你的认可是我创作的动力! \textcolor{orange}{点赞,你的认可是我创作的动力!} 点赞,你的认可是我创作的动力!
⭐ 收藏,你的青睐是我努力的方向! \textcolor{red}{收藏,你的青睐是我努力的方向!} 收藏,你的青睐是我努力的方向!
🥕 评论,你的意见是我进步的财富! \textcolor{green}{评论,你的意见是我进步的财富!} 评论,你的意见是我进步的财富!