首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
原理
订阅
路舍
更多收藏集
微信扫码分享
微信
新浪微博
QQ
17篇文章 · 0订阅
7张图,20分钟就能搞定的async/await原理!为什么要拖那么久?
前言 大家好,我是林三心,以最通俗的话,讲最难的知识点是我写文章的宗旨 之前我发过一篇手写Promise原理,最通俗易懂的版本!!!,带大家基本了解了Promise内部的实现原理,而提到Promise
JS引擎(一):JS中的JIT与基本执行逻辑
一般来说,每个浏览器、运行时都可能实现自己的JIT编译器,但通常其理论是一样的,遵循相同的结构。 由于JS是解释型语言,JS引擎需要将代码逐行翻译为可执行的代码,可执行的代码有多种形式,其中较常见的有基于AST直接执行及ByteCode的执行方式。 在解释器执行代码时,监视器会…
深入理解JavaScript作用域和作用域链
JavaScript中有一个被称为作用域(Scope)的特性。虽然对于许多新手开发者来说,作用域的概念并不是很容易理解,本文我会尽我所能用最简单的方式来解释作用域和作用域链,希望大家有所收获! 作用域是在运行时代码中的某些特定部分中变量,函数和对象的可访问性。换句话说,作用域决…
微任务、宏任务与Event-Loop
首先,JavaScript是一个单线程的脚本语言。 所以就是说在一行代码执行的过程中,必然不会存在同时执行的另一行代码,就像使用alert()以后进行疯狂console.log,如果没有关闭弹框,控制台是不会显示出一条log信息的。 亦或者有些代码执行了大量计算,比方说在前端暴…
说说JS中的沙箱
| 导语 其实在前端编码中,或多或少都会接触到沙箱,可能天真善良的你没有留意到,又可能,你还并不知道它的真正用途,学会使用沙箱,可以避免潜在的代码注入以及未知的安全问题。 沙箱,即sandbox,顾名思义,就是让你的程序跑在一个隔离的环境下,不对外界的其他程序造成影响,通过创…
【THE LAST TIME】彻底吃透 JavaScript 执行机制
【THE LAST TIME】一直是我想写的一个系列,旨在厚积薄发,重温前端。 也是给自己的查缺补漏和技术分享。 欢迎大家多多评论指点吐槽。 首先我们需要声明下,JavaScript 的执行和运行是两个不同概念的,执行,一般依赖于环境,比如 node、浏览器、Ringo 等, …
V8引擎详解(八)——消息队列
本文是V8引擎详解系列的第八篇,重点内容是关于V8引擎的消息队列,会通过单线程的特点入手来学习,逐步其消息队列的运行机制。 文末会有已经完成的系列文章的链接,本系列文章还在不断更新欢迎持续关注。 由于javascript最初作为浏览器脚本语言,主要用来与用户互动、操作dom等,…
宏任务、微任务和 Promise 的性能
我们都知道 setTimeout 和 Promise 并不在一个异步队列中,前者属于宏任务(MacroTask),而后者属于微任务(MicroTask)。 很多文章在介绍宏任务和微任务的差异时,往往用一个类似于 ++i++++ 一样的题目让大家猜测不同任务的执行先后。这么做虽然…
各种源码实现,你想要的这里都有
返回新对象。 简单版深拷贝,列举三个例子 array object function,可以自行扩展。主要是引发大家的思考 鄙人公众号【前端技匠】,一起来学习吧。
9k字 | Promise/async/Generator实现原理解析
笔者刚接触async/await时,就被其暂停执行的特性吸引了,心想在没有原生API支持的情况下,await居然能挂起当前方法,实现暂停执行,我感到十分好奇。好奇心驱使我一层一层剥开有关JS异步编程的一切。阅读完本文,读者应该能够了解: 回归正题,文章开头我们先点一下Promi…