![](https://img-blog.csdnimg.cn/direct/f913efeb12684376b967c6613698625c.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
JavaScript
文章平均质量分 85
JavaScript的一些知识
鑫宝Code
前端/全栈/合约开发工程师
曾在字节跳动,阿里巴巴工作过
目前专注于Web3
展开
-
【JavaScript】面试手撕柯里化函数
首先,我们参照维基百科给出的定义:在计算机科学中,柯里化(英语:Currying),又译为卡瑞化或加里化,是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术举个🌰我们正常情况下写sum函数是如下的方式// 调用sum(1,2)但是柯里化后是这样实现的// 调用sum(1)(2)原创 2024-03-13 23:48:47 · 1764 阅读 · 76 评论 -
【JavaScript】面试手撕深拷贝
首先使用利用将对象转成JSON字符串。再用JSON.parse把字符串解析成对象,一去一来,新的对象产生了,而且对象会开辟新的栈,实现深拷贝。是lodash库提供的深拷贝的方法,非常实用,建议背诵😂。原创 2024-03-11 22:56:58 · 4452 阅读 · 139 评论 -
【JavaScript】面试手撕浅拷贝
行文至此,肯定会有朋友问,什么事浅拷贝呢?顾名思义,就是浅浅的copy一下。🐶在JavaScript中,对于浅拷贝分为两种情况。对于浅拷贝,如果待拷贝的数据是基础类型的属性(如NumberStringBoolean等基本类型),那么只需要将这个值直接复制过来即可。对于浅拷贝,如果待拷贝的数据是引用类型的属性(如对象数组),那么复制的则是对象的引用以及第一层的基础属性值。原创 2024-03-04 18:16:10 · 1357 阅读 · 66 评论 -
【JavaScript】面试手撕节流
我们知道一般女神回复舔🐶的概率都是比较低的,假设女神每天回复舔🐶一次。也就是说如果今天女生已经回复过了,那么无论舔🐶发再多的信不会回的。如果我们要实现这样的一个需求,完成一个事件触发时立即执行,触发完毕还能执行一次的节流函数该如何做呢?此处借鉴掘金网友《6个瑞士卷》的分析,个人觉得逻辑写的很好。我们知道短信验证是在生活中很常见,其实短信验证便用到了节流的技术。这里我举两个常见的🌰,大家有什么更好的🌰可以在评论里回复。这个王者荣耀的攻击例子也算是节流,不过这个我就不举了。,个人认为本质上是一样的。原创 2024-03-01 20:01:21 · 1430 阅读 · 39 评论 -
【JavaScript】面试手撕防抖
例如上面例子所示,我们不能每次检测到输入就向后端发起请求,如果碰到了键盘手,凭借着他的超快手速,很有可能直接把我们的后端服务干崩(其实准确的说,应该不存在这样天赋异禀者🐶)。真不瞒您说,我观察一个项目,看到很多地方用到防抖,我就知道这个开发者的水平还是蛮不错的。写完基础版防抖函数的你大松一口气,突然对面的面试官笑意再次加强,既然你写的这么快,离结束还有蛮多时间的,不如你就再写一个首次触发立即执行的防抖函数吧?听到此,面试官笑意更甚,心想真是孺子可教也,还学会抢答了,🐮的🐮的。来控制这个行为即可。原创 2024-02-28 10:00:36 · 1092 阅读 · 15 评论 -
【JavaScript】面试手写题精讲之数组(下)
这章主要讲的是数组的排序篇,我们知道面试的时候,数组的排序是经常出现的题目。所以这块还是有必要进行一下讲解的。笔者观察了下前端这块的常用算法排序题,大概可以分为如下。大排序算法的实现,至于有些读者问如果面试题出了其他的排序算法呢?,那我觉得他可能就不太想让候选人通过,如果出。,那我建议你这次面试可以不用面了,因为。等,我个人认为如果一家公司给候选人出。所以笔者在该章节只会讲解这。原创 2024-02-17 22:59:16 · 1686 阅读 · 23 评论 -
【JavaScript】面试手写题精讲之数组(中)
函数,于是我们需要在数组的原型上定义这个函数,才能方便我们调用,具体代码如下。接下来我们就是采用这种方式去实现一些数组常用的方法。相关的考题,有些人可能会纳闷,数组和原型链之间有什么关系呢?最后,这就是本章节的内容,之后有机会再更几个手写数组原型链的函数。举个🌰,如我有一个数组。数组的值进行求和,该如何做呢?了解上述资料后,于是我们可以自己实现一个。这个回调函数有三个参数,分别如下。我们也看一个🌰,帮助大家会一起。续借上文,这篇文章主要讲的是。的方法有哪些参数,调研发现。的参数前面一致,多了一个。原创 2024-02-16 20:11:34 · 608 阅读 · 6 评论 -
【JavaScript】面试手写题精讲之数组(上)
有些时候好不容易把题目写出来了,突然面试官冷不丁来一句有没有更优的解法,直接让我们僵在原地。我们会将一些常见的不是最优解的答案作为对比,方便大家更好理解。循环开开心心地写着,作为一个面试官,很多时候我想打断他, 但是又于心不忍,破坏他写代码时专注的气氛。这段代码,如果数组里还有内嵌数组,那么这个条件一直为真,会一直执行下去,知道所有的元素都不是数组为止才会推出循环。有很多年轻人见到这题后,就开始了长久的静坐,咳咳。小伙子,不好意思,我没把问题表述清楚,我希望的是你能把这个flat方法实现一下。原创 2024-02-15 00:21:06 · 658 阅读 · 0 评论 -
【JavaScript】如何压缩和解压数组
两个或多个数组的 Zipping 是指将它们的元素合并成一个数组。可以看到,本例中的第一个数组包含原始数组的所有第一个元素,第二个数组包含所有第二个元素,以此类推。原创 2024-02-12 23:14:29 · 596 阅读 · 0 评论