备忘录

什么是 MVVM、mvc 模型? 

MVVM 是通过分离数据、视图和逻辑,使得前端开发更模块化、可维护,并提高开发效率的设计模式。

常用的vue指令,修饰符

vue指令:  v-bind、v-model、v-on、v-if

修饰符:.stop .once .prevent

vue父子组件的通信

父传子组件 子组件通过 props 来接收

子传父通过自定义事件($emit)自定义事件传递

数组的操作

arr.push(4);// 末尾添加,返回新长度

arr.pop();// 删除末尾,返回被删元素

arr.unshift(0);// 头部添加,返回新长度

arr.shift();// 删除头部,返回被删元素

arr.splice(2,1,'a','b');// 从索引2开始删除1个,插入'a','b'

变量的声明差异

var 是函数作用域,且变量提升,可能会导致不易察觉的错误。
let 和 const 是块级作用域,支持更严格的变量管理,且不在提升阶段初始化。
const 用于声明常量,不能被重新赋值,而 let 则可以重新赋值。
let 和 const 的块级作用域特点使它们在闭包和循环中表现得更加符合预期。

浏览器缓存的不同

Cookie 数据会随请求发送到服务器,而 LocalStorage 仅在浏览器端可用
Cookie 大小限制为 4KB,LocalStorage 约 5MB
Cookie 可设置路径和域名,LocalStorage 仅与当前域名关联

vue路由的实现原理

Vue Router 的核心原理是通过定义路由表、监听浏览器地址的变化、匹配路由并渲染组件,来实现页面的切换

v-model的原理

v-model在表单控件上的工作原理可以分为两个部分:
属性绑定:使用v-bind指令将Vue实例的数据绑定到表单元素的value属性上。
事件监听:使用v-on指令监听表单元素的input事件,当用户输入时,将新的值赋给绑定的数据。

vue3 为什么使用proxy

1、defineProperty 局限性,只能针对单例属性做监听。
2、Vue2 中对data中的属性,做了遍历和递归,为每个属性设置了getter和setter
3、这样就导致VUE只能对data中预定义过的属性做出响应的原因
4、如果直接添加一个不存在的话,是无法做到setter监听的Proxy 是针对整个对象的,那么对这个对象的所有操作,都会进入监听,就可以代理所5、有的属性带来很大的性能提升和代码优化
6、Proxy可以理解成,对源对象做了一层拦截,外界对这个对象的访问,都必须经过这层拦截,因此提供了一个机制,可以对外界的访问进行过滤和修改

get和post的区别

请求参数长度限制不同,回退和刷新不同、历史记录不同

状态码

一、1xx 信息性状态码
二、2xx 成功状态码
三、3xx 重定向状态码
四、4xx 客户端错误状态码
五、5xx 服务器错误状态码

前端做的性能优化

图片懒加载 减少 dom操作 减少网络请求 异步编程 代码分割 路由懒加载 使用 webp格式

一个html文件到网页上呈现的过程

当用户输入网页地址的时候,浏览器会先查看本地缓存有没有没过期的网页历史,如果没有
就会通过本地DNS服务器来解析出IP地址,当域名和服务器的IP地址匹配上,浏览器就会尝试和服务器建立TCP链接,浏览器先向服务器发起一个申请连接的包,服务器收到后会回复一个同意包,浏览器收到后再回复一个确认的包,此时 TCP 连接就建立成功了。
连接成功后,浏览器会像服务器发起请求,hared,或者get post请求,服务器收到后会给浏览器返回一个包,这个包包含了状态码,浏览器会根据状态码来解开,然后渲染div等dome节点,随后 再加载css 和js这些文件,最后就呈现出了 用户看到的网页。

入一个地址 到浏览器 到呈现内容到页面的过程

1、用户输入 URL 
2、 DNS解析
3、建立TCP连接
4、发送http请求
5、服务器响应
6、浏览器开始渲染页面(接收html 渲染html 解析css 绘制)
7、js执行
8、资源加载
9、渲染完成
10、关闭链接

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 物理内存虚拟内存的关系、堆栈、 比如工作环境,薪资待遇,要不要加班,主要工作内容,要用到什么技术,团队有没有什么缺...
    nlpjoe阅读 1,318评论 0 8
  • 一、项目结构介绍 pages.json:配置页面路由、导航条、选项卡等页面类信息,详见。manifest.json...
    移动端_小刚哥阅读 3,258评论 0 4
  • 我是一名前端爱好者,在学习了JavaScript DOM操作之后,突发奇想,写了一个备忘录,虽然还没保存以及动画功...
    LeeYaMaster阅读 2,089评论 0 10
  • iOS中经常涉及到与H5界面的交互,但是无奈不懂H5,每次交互都需要与前端人员交流;其次就是每次看到H5的代码总觉...
    横爬介士阅读 863评论 0 1
  • iOS中经常涉及到与H5界面的交互,但是无奈不懂H5,每次交互都需要与前端人员交流;其次就是每次看到H5的代码总觉...
    Sunny_Fight阅读 504评论 0 1

友情链接更多精彩内容