首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
JavaScript
订阅
ruoruochen
更多收藏集
微信扫码分享
微信
新浪微博
QQ
13篇文章 · 0订阅
JavaScript 中常见设计模式整理
开发中,我们或多或少地接触了设计模式,但是很多时候不知道自己使用了哪种设计模式或者说该使用何种设计模式。本文意在梳理常见设计模式的特点,从而对它们有比较清晰的认知。 看完了上述设计模式后,把它们的关键词特点罗列出来,以后提到某种设计模式,进而联想相应的关键词和例子,从而心中有数。
面试官连环追问:数组拍平(扁平化) flat 方法实现
前段时间秋招面哔哩哔哩的时候,面试官问:如何实现 flat 方法?当时手写的并不完美,后来回盘复习,发现面试要求手写数组拍平(扁平化) flat 方法的面试官不在少数。其中包括:拼多多、小米、美团、滴滴、shopee、有赞等。手写 flat 方法是一道非常基础的面试题,通常出现…
自从学会了 Array.reduce() ,再也离不开它
在所有后 ES6 时代的数组方法中,我觉得最难理解的就是Array.reduce()。 从表面上看,它似乎是一个简单无趣的方法,并没有太大作用。 但是在不起眼的外表之下,Array.reduce()实际上是对开发人员工具包的强大而灵活的补充。 今天,我们就来研究一下通过Arra…
ES6之Array.from()方法
Array.from()方法就是将一个类数组对象或者可遍历对象转换成一个真正的数组。 那么什么是类数组对象呢?所谓类数组对象,最基本的要求就是具有length属性的对象。 那么,如果将上面代码中 length 属性去掉呢?实践证明,答案会是一个长度为0的空数组。 1、该类数组对…
JS事件流和事件委托
在上一篇《JS知识点大杂烩》中说到了事件流但没有详细的介绍,这篇文章就来介绍一下事件流。 事件绑定大家都知道,有DOM0级(on+type)和DOM2级(addEventListener),我觉得说那么多概念不好理解,直接看代码吧,为了方便我就直接使用id来获取元素。 输出了b…
flexible.js 原理解析(看了不会忘)
>写关于原理解析的文章很多,每次看完理解了,后面又忘记了,这次自己整理一下,用通俗形象的话梳理一下。 >flexible.js用来处理移动端各种设备兼容问题。也就是怎么解决移动端尺寸众多的问题,我们的
「前端进阶」彻底弄懂函数柯里化
函数柯里化在许多应用程序中已经变得很普遍。 了解它们是什么,它们如何工作以及如何充分利用它们非常重要。 在数学和计算机科学中,柯里化是一种将使用多个参数的一个函数转换成一系列使用一个参数的函数的技术。 该函数返回一个接收第三个参数的函数。 将之前接收到的三个参数应用于原普通函数…
从一道面试题认识函数柯里化
最近在整理面试资源的时候,发现一道有意思的题目,所以就记录下来。 首先来分析下这道题,实现一个 multi 函数并依次传入参数执行,得到最终的结果。通过题目很容易得到的结论是,把传入的参数相乘就能够得到需要的结果,也就是 2X3X4 = 24。 那么如何实现 multi 函数去…
JavaScript 函数式编程
应该很多童鞋都听过函数式编程(Functional programming)的概念吧,可能有的童鞋有听说过函数式编程但并不是特别了解,但其实在我们的开发过程中,或多或少都已经应用了函数式编程的思想。 相对于面向对象编程(Object-oriented programming)关…
微任务、宏任务与Event-Loop
首先,JavaScript是一个单线程的脚本语言。 所以就是说在一行代码执行的过程中,必然不会存在同时执行的另一行代码,就像使用alert()以后进行疯狂console.log,如果没有关闭弹框,控制台是不会显示出一条log信息的。 亦或者有些代码执行了大量计算,比方说在前端暴…