首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
js知识点
订阅
进击的铁牛
更多收藏集
微信扫码分享
微信
新浪微博
QQ
20篇文章 · 0订阅
JS 闭包经典使用场景和含闭包必刷题
堆内存:存储引用类型值,对象类型就是键值对,函数就是代码字符串。 栈内存:提供代码执行的环境和存储基本类型值。 栈内存释放:一般当函数执行完后函数的私有作用域就会被释放掉。 保护函数的私有变量不受外部的干扰。形成不销毁的栈内存。 保存,把一些函数内的值保存下来。闭包可以实现方法…
彻底解决 JS 变量提升| 一题一图,超详细包教包会😉
二. 带 var 和不带 var 的区别 全局作用域中不带var声明变量虽然也可以但是建议带上 var声明变量,不带 var 的相当于给window对象设置一个属性罢了。 私有作用域(函数作用域),带 var 的是私有变量。不带 var 的是会向上级作用域查找,如果上级作用域也…
一文搞懂JS系列(一)之编译原理,作用域,作用域链,变量提升,暂时性死区
这个阶段的主角就是所谓的编译器,这个编译器会找遍当前作用域,看看是不是已经存在一个叫 name 的变量。如果已经存在,那么就什么都不做,直接忽略 var name 这个声明,继续编译下去;如果没有,则在当前作用域里新增一个叫 name 的变量。然后,编译器会为引擎生成运行时所需…
JS基础面试高频(二):数据类型【进阶】
1.toString()方法。(基础数据类型本身没有该方法,但会通过原型链去找原型对象中的方法) 2.String()函数强制转换。(与toString()方法的区别就是可以转换undefined和null) 3.隐式转换。(当+运算符的一侧为String类型的时候,在运算的过…
如何写出一个惊艳面试官的深拷贝?
最近经常看到很多JavaScript手写代码的文章总结,里面提供了很多JavaScript Api的手写实现。 里面的题目实现大多类似,而且说实话很多代码在我看来是非常简陋的,如果我作为面试官,看到这样的代码,在我心里是不会合格的,本篇文章我拿最简单的深拷贝来讲一讲。 本文由浅…
一看就懂的var、let、const三者区别
哈喽大家好,又见面啦,我依旧是那个可爱的蛙人。 今天又周五了啊,划水人的一天,开心。 我们在全局作用域中或还是在局部作用域中,使用var关键字声明的变量,都会被提升到该作用域的最顶部,这就是我们常说的变量提升。 上面example中,if代码块中的var声明的变量就被提升到了函…
你真的了解ES6的Set,WeakSet,Map和WeakMap吗?
之前在学习 ES6 的时候,看到 Set 和 Map,不知道其应用场景有哪些,只觉得很多时候会用在数组去重和数据存储,后来慢慢才领悟到 Set 是一种叫做集合的数据结构,Map 是一种叫做字典的数据结构。 Set 本身是一个构造函数,用来生成 Set 数据结构。Set 函数可以…
强引用和弱引用——Set、WeakSet、Map、WeakMap区别
WeakSet中的对象都是弱引用,即垃圾回收机制不考虑 WeakSet 对该对象的引用,也就是说,如果其他对象都不再引用该对象,那么垃圾回收机制会自动回收该对象所占用的内存
pnpm 是凭什么对 npm 和 yarn 降维打击的
大家最近是不是经常听到 pnpm,我也一样。今天研究了一下它的机制,确实厉害,对 yarn 和 npm 可以说是降维打击。 那具体好在哪里呢? 我们一起来看一下。 我们按照包管理工具的发展历史,从 n
事件发布/订阅模式的简单实现
是的,了解JS的人都清楚,JS中动辄异步,动辄回调函数,尤其是在DOM中绑定事件。而目前广泛用于处理异步编程的方法主要有发布/订阅模式,Promise,async/await。 可是,你只知道传入回调函数,却不知道这中间都经历了什么?你只知道回调函数会在合适的时机被调用,可这又…