前端学习
文章平均质量分 54
给各位大佬递茶yao
我是个菜鸡,给各位大佬鞠躬敬茶/\大家不要关注我,我将这个账号当做云笔记用,不保证内容准确性
展开
-
promise-reflect-proxy
proxy类是es6提出的用于代理对象的,当我们想要监听外界对于对象的操作的时候我们使用new Proxy创建一个proxy对象,传入需要监听的对象和处理对象,这样外界对于被监听对象的操作都通过这层代理对象完成,也就可以监听对象的操作;当我们执行resolve回调函数的时候【状态变成fufilled的时候】会执行Promise对象的then方法,执行reject回调函数的时候执行的是Promise对象的catch方法;不是专门用于劫持对象属性的方法,想要监听属性的新增与删除也是无法做到的。原创 2023-05-26 18:55:48 · 781 阅读 · 0 评论 -
关于原型链
所以当我们查找一个对象的key对应的属性值的时候,对象本身没找到,会查找对象的隐式原型,隐式原型的隐式原型对象……主要原理是让父类的实例对象作为子类构造函数的显式原型对象,这个父类实例对象的隐式原型指向的是自身构造函数的显式原型对象,这个显式原型对象的隐式原型对象指向的Object的原型对象。所以,对象上只有隐式原型对象__proto__,而它的构造函数上因为既是函数又是函数对象,所以既有显式原型又有隐式原型对象,一个对象的隐式原型指向它的构造函数的显式原型。新建一个空对象,这个对象其实就是原型对象。原创 2023-05-26 15:43:57 · 829 阅读 · 0 评论 -
监听鼠标操作
手机端监听touchstart事件。电脑端监听鼠标移动操作。原创 2023-05-25 15:20:18 · 694 阅读 · 0 评论 -
操作dom
但是这样它们也就记录的是DOM树历史状态,无法实时反映DOM树状态;NodeList和HTMLCollection不是文档树历史状态的快照,而是反映DOM树的实时状态;相同点:都是类数组对象,具有length属性,可以通过call、bind转换成真正的数组;元素的children属性和childNodes属性的区别根本上也是这两个的区别;DOM文档树中存在三种节点,元素节点(有标签名的节点)、文本节点、属性节点;通过id、name、className属性获取,通过tagName获取;原创 2023-05-25 14:51:33 · 1272 阅读 · 0 评论 -
html+css
某些元素在特定情况可以当做可替换元素对待,label有option属性的时候,audio标签,input的type为image的时候,canvas绘制的时候。margin传递一般发生在父子元素的顶部线或者底部线重合的时候,设置在子元素上的margin-top或指责margin-bottom没生效,反而在父元素上面生效了。visibility:0,透明度设置为0,没有将元素移除文档流,和上面的区别是不可以点击元素进行事件操作;opacity:0;设置元素透明度为0,没有移除文档,并且可以点击元素进行操作;原创 2023-05-21 18:48:27 · 81 阅读 · 0 评论 -
js基本数据类型
而事件委托就是根据事件的冒泡机制+我们可以通过e.target获取触发事件的最具体元素,将具体子元素的事件委托给父元素进行处理。不需要为很多相同子元素绑定同一事件,可以把事件绑定在父元素上,在事件流进入到冒泡阶段时,通过事件对象event判断事件流进行的元素和目标元素是否一致,如果一致就触发对应的事件代码。通过切分代码进行首屏加载优化之后,首屏js文件大小大大减少,但是跳转到其他页面的时候,还需要下载js文件,需要等待js代码下载,频繁loading,体验很差。DOM是文档对象模型的缩写。原创 2023-05-20 18:19:21 · 43 阅读 · 0 评论 -
vue3使用animate.css
动画效果是在进入页面的时候立刻生效,怎么可以实现点击的时候生效呢?原创 2023-03-17 19:48:51 · 406 阅读 · 0 评论 -
跟着小满老师学vue3,day2
directive// console.log(args)//args是一个数组 //args[0],el,当前绑定的元素 //args[1].value={123},args[1].arg=“aaa",args[1].modifiers={"yyy"} //args[2]虚拟dom //args[3] } , beforeMount() {} , };公司一般会封装一个按钮级别的自定义指令,判断权限。原创 2023-03-11 18:26:59 · 100 阅读 · 0 评论 -
跟着小满老师学习vue+pinia+ts(笔记1)
为了通过 effectFn 得到真正的副作用函数 fn 的执行结果,我们需要将其保存到 res 变量中,然后将其作为 effectFn 函数的返回值。effectFn函数返回res变量,effect函数返回改造后的effectFn函数,传入的参数是effect副作用函数和配置项options。避免更改计算属性的值,因为依赖项更新的时候,计算属性相当于一次快照,改变快照是没有意义的,因此计算属性的返回值应当视为只读且永远不会被改变,它只依赖于依赖项状态的改变而改变。数据更新之前,可以在此操作一些数据或状态。原创 2023-03-10 19:03:46 · 925 阅读 · 1 评论 -
排序算法(js版)
常见的有冒泡排序、插入排序、选择排序、快速排序。原创 2023-03-05 15:40:18 · 121 阅读 · 0 评论 -
手撕笔试题
使用 new WeakMap() 初始化一个对象 memo 作为记录表,以确保不会无限制地复制相同的对象。如果当前的 memo 已经注册过该对象,则返回 memo 中的新的副本;否则,就新建一个数组或者对象,进行递归复制,同时在 memo 中记录原文件及其副本。循环引用:一个对象包含对另一个对象的引用,而另一个对象也包含对第一个对象的引用。请补全JavaScript代码,完成"Observer"、"Observerd"类实现观察者模式。以数组的形式返回字符串参数的所有排列组合。原创 2023-03-03 20:26:05 · 62 阅读 · 0 评论 -
封装axios(自用,不具有参考性)
关于请求响应已经封装好,添加了拦截等功能,适配node和浏览器;原创 2023-02-16 21:56:33 · 208 阅读 · 0 评论 -
git的一些记录
将本地仓库内容提交到远程仓库。检查当前项目关联的远程仓库。原创 2023-02-10 17:17:20 · 73 阅读 · 0 评论 -
vue学习(一些笔记)自用
vue。原创 2023-02-09 19:36:33 · 55 阅读 · 0 评论