闭包
WYQ1269551631
这个作者很懒,什么都没留下…
展开
-
通过运行机制看this绑定 、作用域、作用域链和闭包
通过运行机制看this绑定 、作用域、作用域链和闭包 一、引言 了解js的运行机制有助于我们在日常的工作中,写成高质量的代码,减少bug的产生,节约维护成本。也有助于我们通过造火箭的面试。 了解JavaScript引擎。 通过运行机制看作用域和作用域链。 通过运行机制理解this的绑定和优先级。 通过运行机制理解闭包。 二、渲染引擎 | JavaScript引擎(JavaScript Engine) 了解运行机制之前,我们先来搞清楚几个基本概念。 2.1 渲染引擎 渲染是根据描述或者定义构建一个数据模型原创 2020-07-03 22:44:53 · 185 阅读 · 1 评论 -
「前端进阶」JS中的栈内存堆内存
「前端进阶」JS中的栈内存堆内存 引言 JS的内存空间分为栈(stack)、堆(heap)、池(一般也会归类为栈中)。 其中栈存放变量,堆存放复杂对象,池存放常量,所以也叫常量池。 栈数据结构 栈是一种特殊的列表,栈内的元素只能通过列表的一端访问,这一端称为栈顶。栈被称为是一种后入先出(LIFO,last-in-first-out)的数据结构。由于栈具有后入先出的特点,所以任何不在栈顶的元素都无法访问。为了得到栈底的元素,必须先拿掉上面的元素。在这里,为方便理解,通过类比乒乓球盒子来分析栈的存取方式。 这原创 2020-07-03 22:09:07 · 374 阅读 · 0 评论 -
详解闭包与垃圾回收机制的关系
简介 像C语言这样的底层语言一般都有底层的内存管理接口,比如 malloc()和free()。相反,JavaScript是在创建变量(对象,字符串等)时自动进行了分配内存,并且在不使用它们时“自动”释放。 释放的过程称为垃圾回收。这个“自动”是混乱的根源,并让JavaScript(和其他高级语言)开发者错误的感觉他们可以不关心内存管理。 内存生命周期 不管什么程序语言,内存生命周期基本是一致的: 分配你所需要的内存 使用分配到的内存(读、写) 不需要时将其释放\归还 所有语言第二部分都是明确的。第一和第原创 2020-07-03 21:50:07 · 250 阅读 · 0 评论 -
闭包面试题详解
闭包详解 前言 现在去面试前端开发的岗位,如果你对面试官也是个前端,并且不是太水的话,你有很大的概率会被问到JavaScript中的闭包。因为这个闭包这个知识点真的很重要,还非常难掌握。 什么是闭包 什么是闭包,你可能会搜出很多答案… 《JavaScript高级程序设计》这样描述: 闭包是指有权访问另一个函数作用域中的变量的函数; 《JavaScript权威指南》这样描述: 从技术的角度讲,所有的JavaScript函数都是闭包:它们都是对象,它们都关联到作用域链。 《你不知道的JavaScript》这原创 2020-07-02 23:59:29 · 1038 阅读 · 0 评论