
JavaScript
文章平均质量分 76
晚时之秋
好看的皮囊千篇一律,有趣的灵魂万里挑一
展开
-
bind、call、apply 区别?如何实现一个bind?
但是我们把say放在setTimeout方法中,在定时器中是作为回调函数来执行的,因此回到主栈执行时是在全局执行上下文的环境中执行的,这时候this指向window,所以输出lucy。bind方法和call很相似,第一参数也是this的指向,后面传入的也是一个参数列表(但是这个参数列表可以分多次传入)apply接受两个参数,第一个参数是this的指向,第二个参数是函数接受的参数,以数组的形式传入。call方法的第一个参数也是this的指向,后面传入的是一个参数列表。那么什么情况下需要改变this的指向呢?原创 2023-02-23 08:59:13 · 101 阅读 · 0 评论 -
ajax原理是什么?如何实现?
即异步的JavaScript和XML,是一种创建交互式网页应用的网页开发技术,可以在不重新加载整个网页的情况下,与服务器交换数据,并且更新部分网页。原创 2023-02-23 08:52:32 · 124 阅读 · 0 评论 -
Javascript本地存储的方式有哪些?区别及应用场景?
举个例子,在一些使用 cookie保持登录态的网站上,如果 cookie被窃取,他人很容易利用你的 cookie来假扮成你登录网站。关于cookie的修改,首先要确定domain和path属性都是相同的才可以,其中有一个不同得时候都会创建出一个新的cookie。最后cookie的删除,最常用的方法就是给cookie设置一个过期的事件,这样cookie过期后会被浏览器删除。通过上述,我们可以看到cookie又开始的作用并不是为了缓存而设计出来,只是借用了cookie的特性实现缓存。原创 2023-01-09 22:00:08 · 378 阅读 · 0 评论 -
说说你对koa中洋葱模型的理解?
是以next()函数为分割点,先由外到内执行Request的逻辑,然后再由内到外执行Response的逻辑,这里的request的逻辑,我们可以理解为是next之前的内容,response的逻辑是next函数之后的内容,也可以说每一个中间件都有两次处理时机。洋葱模型的核心原理主要是借助compose方法。因为很多时候,在一个app里面有很多中间件,有些中间件需要依赖其他中间件的结果,用葱模型可以保证执行顺序,如果没有洋葱模型,执行顺序可能出乎我们的预期。基于async/await的中间件洋葱模型机制。原创 2023-01-06 21:17:01 · 155 阅读 · 0 评论 -
说说 JavaScript 中内存泄漏的几种情况?
如果id为Node的元素从DOM中移除,该定时器仍会存在,同时,因为回调函数中包含对someResource的引用,定时器外面的someResource也不会被释放。并非指内存在物理上的消失,而是应用程序分配某段内存后,由于设计错误,导致在释放该段内存之前就失去了对该段内存的控制,从而造成了内存的浪费。然后,它会将所有在上下文中的变量,以及被在上下文中的变量引用的变量的标记去掉。通过设置arr为null,就解除了对数组[1,2,3,4]的引用,引用次数变为 0,就被垃圾回收了。程序的运行需要内存。原创 2022-12-31 01:28:26 · 510 阅读 · 0 评论 -
什么是防抖和节流?有什么区别?如何实现?
节流: n 秒内只运行一次,若在 n 秒内重复触发,只有一次生效防抖: n 秒后在执行该事件,若在 n 秒内被重复触发,则重新计时一个经典的比喻:想象每天上班大厦底下的电梯。把电梯完成一次运送,类比为一次函数的执行和响应假设电梯有两种运行策略 debounce 和 throttle,超时设定为15秒,不考虑容量限制电梯第一个人进来后,15秒后准时运送一次,这是节流电梯第一个人进来后,等待15秒。如果过程中又有人进来,15秒等待重新计时,直到15秒后开始运送,这是防抖。原创 2022-12-30 21:11:58 · 162 阅读 · 0 评论 -
数组常用方法及作用?
在一个数组中,按照条件查找出其中的部分内容,两个参数(n,m),从索引n处开始找到m处不包含m,返回以一个新数组存储查找的内容,原有数组不变。在内存中开辟一个连续存储多个数据的存储空间,再起一个统一的名字 数组也是对象数据类型的,也是由键值对组成的。:从左向右查找元素的位置。:向数组开始位置追加新内容,返回新增后数组的长度,原有数组改变。:向数组末尾增加新内容,返回新增后数组的长度,原有数组改变。:可以实现对数组元素的"过滤",返回的元素构成一个新的数组。:实现多个数组的拼接,返回新数组,原有数组不变。原创 2022-12-08 18:02:51 · 206 阅读 · 0 评论