首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
JavaScript专题
HanpengChen
创建于2021-05-19
订阅专栏
JavaScript相关学习笔记、实践技巧、原理学习、手写源码等
等 1 人订阅
共12篇文章
创建于2021-05-19
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
学习Vue源码前需要了解的defineProperty和Proxy
前言 大家有使用Vue开发想必对响应式都有了解,知道Vue2是用Object.defineProperty实现数据劫持,进而实现的双向绑定。在已经发布快一年的Vue3中,数据响应式的实现由Object
JS中的apply、call、bind你掌握了吗?一起来手写实现这三个方法吧 | 创作者训练营第二期
apply、call和bind这三个方法在函数原型链中是比较重要的概念,和this关键字密切相关。如果你对这三个方法还不是很清楚的话,那么认真地阅读这篇文章吧,让我们一起来彻底掌握它们吧! 在开始介绍
一起搞清楚JS中的new到底做了什么,并模拟实现一个new
new关键字对于前端开发者来说是比较常见的操作,在互联网大厂的面试中,有时候会要求手写实现new。接下来我们一起看看new到底做了什么?如何模拟实现?new原理介绍new概念关于new关键字,MDN上
一起手写实现符合Promise/A+规范的Promise源码
Promise是JavaScript中异步编程的核心内容,也是前端面试的高频问题。关于Promise的基本用法这里不再详细介绍,接下来我们一起来实现一个符合 Promise/A+ 规范的Promise。 在开始写代码之前,我们要知道Promise/A+规范都有哪些内容。 上面是…
「面试必备」一文吃透JavaScript继承
继承在各种编程语言中都充当着至关重要的角色,在JavaScript中也被经常用在前端工程基础库的底层搭建上,是JavaScript需要重点学习的一块内容。 继承可以使得子类具有父类的各种方法和属性。ES6中推出了class这个概念,方便了我们学习和理解,但class只是一个语法…
这一次,彻底掌握JavaScript的深浅拷贝
关于拷贝这个问题,也是前端面试中的一道经典面试题,我们在日常开发中也常碰到需要用到深拷贝或浅拷贝的场景。接下来我们通过这篇文章,彻底掌握JavaScript的深浅拷贝。 Object是引用类型,其他7种为基础类型。 引用类型存储在堆内存,存储的是地址,多个引用指向同一个地址,这…
聊一聊JavaScript类型判断的四种方法|七日打卡
在web开发中,我们经常碰到需要判断数据是数字还是字符串,判断是数组还是对象的场景,接下来我们一起来看看JavaScript中都有哪些方法可以判断数据类型。 在JS中,我们最常用的判断方法自然是typeof。 在ES5中,JavaScript有六种数据类型:Number、Str…
JavaScript-数组乱序
数组乱序在实际开发过程中是可能碰到的,下面我们一起看看如何实现数组乱序。 我们一开始可能会想到利用数组的sort方法,判断随机出来的0-1的值与0.5的大小,实现排序。该方法实现如下: 上面的实现方法看起来很完美地实现了乱序的需求,但实际的效果如何我们还是要进行测试。 在Chr…
JavaScript-数组去重
JavaScript的数组去重是前端比较常见的一个问题,今天我们来学习几种常见的数组去重方法。 大部分人最先想到的是通过双层循环来去重。双层循环的实现原理很简单:我们先新建一个空的数组res,通过遍历待去重数组array和res,判断array[i]是否存在于res中,如果不存…
JavaScript-数组扁平化
上一篇文章我们将JavaScript中数组的方法汇总了一下,本文我们一起来看看JavaScript数组常见的一个问题:数组扁平化。 数组扁平化:就是讲一个复杂的嵌套多层的数组,一层一层地转化为层级较少或者只有一层的数组。 从上一篇文章中我们可以知道,在ES6 新增的flat()…
JavaScript-函数防抖
自动完成,按照一定频率分析输入,提示自动完成。 鼠标移动和窗口滚动,鼠标稍微移动一下,窗口稍微滚动一下会带来大量的事件,因而需要控制回调的发生频率。 运行该html文件,我们将鼠标在我们定义的矩形区域移动,只是简单的从下往上滑动,mouseMove函数就被触发了99次。 假设m…
JavaScript-函数节流
在上一篇文章《JavaScript-函数防抖》中我们学习了什么是防抖,并且一步步实现了防抖函数,今天我们一起来学习节流(throttle)。 函数节流(throttle):当持续触发事件时,保证一定时间段内只调用一次事件处理函数。简单的说,就是让一个函数无法在很短时间间隔内被连…