- 博客(14)
- 收藏
- 关注
原创 vue3面试题
关于Reflect,我们都知道,获取对象的某一属性的值可以用object.key或者object[key]那么在ES6中,通过Reflect.get(target, key)也可以获取到,ECMA 语法规范组织正在将 Object上的API移植到Reflect,Proxy只会代理对象的第⼀层,判断Reflect.get的返回值是否为Object,如果是则再通过 reactive ⽅法做代理, 这样就实现了深度观测。答案:在Vue 3中,可以使用<template>和<slot>来定义组件的分发内容。
2024-06-12 12:30:45
284
1
原创 如何解决跨域
JSONP 可以跨域传递数据,基本原理是通过前端动态创建一个 <script> 标签,其中的 src 属性指向一个跨域 API 的 URL,该 URL 带有一个参数 callback,跨域 API 返回一段特定格式的 JavaScript 代码,其中 callback 函数的参数就是前端传回去的数据,前端获得结果后可以在本地执行回调函数。浏览器从一个域名的网页去请求另一个域名的资源时,域名、端口、协议任一不同,都是跨域。跨域是因为浏览器的同源策略(Same Origin Policy)限制导致的。
2023-09-04 15:16:54
82
1
原创 三次握手四次挥手
原因:是因为如果只有两次,在服务端收到SYN后,向客户端返回一个ACK确认就进入ESTABLISHED状态,万一这个请求中间遇到网络情况丢失而没有传给客户端,客户端一直是等待状态,后面服务端发送的信息客户端也接受不到了,所以要客户端再次确认。为的是确认服务器端是否收到客户端发出的 ACK 确认报文,当客户端发出最后的 ACK 确认报文时,并不能确定服务器端能够收到该段报文。:服务端收到SYN后应答,并返回SYN+ACK报文,表示已收到,并处于SYN_RECEIVE状态。关于四次挥手先看草图(看图理解)
2023-09-04 15:10:39
106
1
原创 call、apply、bind
2. 接下来给 context 创建⼀个 fn 属性,并将值设置为需要调⽤的函数因为 call 可以传⼊多个参数作为调⽤函数的参数,所以需要将参数剥离出来然后调⽤函数并将对象上的函数删除。call()函数与apply()函数,会立即执行函数的调用,而bind返回的是一个新的函数,可以在任何时候进行调用。call()函数与bind函数的参数是一样的,而apply函数第二个参数是一个数组或者是arguments对象。通过前面对三个函数的基本使用,可以看出,它们共同点就是改变this的指向。
2023-09-04 10:03:54
112
1
原创 判断数据类型的方法有哪些,有什么区别
instanceof 是用来判断 A 是否为 B 的实例,表达式为:A instanceof B,如果 A 是 B 的实例,则返回 true,否则返回 false。2、函数的 constructor 是不稳定的,这个主要体现在自定义对象上,当开发者重写 prototype 后,原有的 constructor 引用会丢失,constructor 会默认为 Object。1、null 和 undefined 是无效的对象,因此是不会有 constructor 存在的,这两种类型的数据需要通过其他方式来判断。
2023-09-04 09:17:43
239
1
原创 js数组常用方法
push()和pop() (数组尾操作)改变原数组 push():向数组的末尾添加元素,并返回新的长度。pop():删除并返回数组的最后一个元素。 shift()和unshift() (数组首操作) 改变原数组 shift():删除并返回数组的第一个元素。unshift():向数组的开头添加元素,并返回新的长度 sort() (排序)改变原数组 对数组的元素进行排序。升序:降序:5.reverse() (反转数组)改变原数组方法用
2023-09-04 09:09:18
54
1
原创 流程画布引擎
可以访问Connection中的“端点”数组,以获取连接中涉及的端点,但注意,在拖动连接时,目标端点将始终是仅在拖动的生命周期内存在的瞬态端点。String 用的是内置的或者自行注册的,Array 用的是具体的配置,如 [x, y, dx, dy, ox, oy]即用鼠标链接上的连线,也可以使用鼠标拖动让其断开。+ dx, dy: 方向,基于元素中心(x 轴朝右,y 轴朝下),(0, -1) 向上,(0, 1) 向下,(1, 0) 向右,(-1, 0) 向左,(0, 0) 任意,不传就是 (0, 0)。
2023-09-04 09:08:58
152
1
原创 js字符串方法
split(separator,limit)字符串分割返回新的数组 separator: 可选。字符串或正则表达式,从该参数指定的地方分割 string Object。limit:可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。 charAt(index) 方法可返回指定位置的字符 index:必需。表示字符串中某个位置的数字,即字符在字符串中的位置。 charCod
2023-09-04 09:08:27
35
1
原创 js复制功能,可粘贴到文档,粘贴栏(复制内容有格式)
在网上看了很多的帖子,发现用input是不可以的(多数帖子都是用的input),要用textarea。我主要是用来复制后端传来的日志文档情景:返回的list列表中,需要有复制功能,可以复制当前内容,并且 当前内容有需要换行的需求。 代码如下:(vue项目)HTML:<ul> <li v-for='(item,key) in content' :key='key' @click="copyContent(item)" style='white-space: pre-w..
2022-03-18 10:39:16
1473
原创 我总结的前端面试题
前言:写这篇文章的主要目的是为了方便自己,也想给大家提供一个资料,有不对的地方,大家多多指出。自我介绍(仅供参考)注意要点(听清楚面试官的问题,想一想再作答,语速放慢,遇到不会的问题不要慌,要主动问面试官问题的答案,目光直视面试官)面试官上午好,我叫**,今天来应聘贵公司的XXX岗位。我从事前端开发三年多,有X年多的Vue开发经验,在上家公司主要从事H5页面,后台管理系统,混合App等项目开发。平常喜欢逛一些技术社区丰富自己的技术,像思否,CSDN之类,并且自己也独立开发了个人博客网站,记录自己
2022-03-17 14:39:09
694
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人