Avatar notebook default
9篇文章 · 11862字 · 1人关注
  • Resize,w 360,h 240
    编译器 和 解释器

    一段 JS 代码是如何被 V8 引擎执行的? 程序中的一段源码在执行前都会经历三个步骤:分词/词法分析 、解析/语法分析、代码生成 ...

  • Resize,w 360,h 240
    Event loop

    浏览器中的 Event loop JavaScript 是单线程的 首先,语言产生的时代多进程多线程的架构并不普及,基于当时硬件支持也不好,而...

  • Resize,w 360,h 240
    JS 垃圾回收

    在 JS 中 值类型数据存储在 栈空间中,引用类型的数据存储在堆空间中。有些数据被使用之后,就不需要了,我们需要将这些 垃圾数据 进行回收从...

  • Resize,w 360,h 240
    JS 中的数据类型

    JS 是 一种 弱类型的动态语言,何为动态语言:运行过程中需要检查数据类型的语⾔称为动态语言;相对应的使用之前就需要确认其变量数据类型的称为静态...

  • Resize,w 360,h 240
    this

    首先看一段代码 两个方法中, 一个使用了 this,一个没有使用而是 显式传入一个上下文对象。 this 提供了一种更优雅的方式来 隐...

  • Resize,w 360,h 240
    作用域 和 闭包

    变量提升带来的问题 1. 后面定义的变量 会覆盖 前面的同名变量 因为变量提升, 后定义的变量 会在不察觉的情况下 覆盖前面的 同名...

  • Resize,w 360,h 240
    调用栈

    在 JS 中, 当一段代码被执行时, JS 引擎会对其进行编译, 并创建 执行上下文。那么 哪些代码才会在执行前就进行编译 并创建 执行上下文:...

  • Resize,w 360,h 240
    变量提升

    首先我们看一段代码的执行 这段代码的输出是undefined, 为什么它会是undefined ,而不是a is not defined,这就跟...

  • Resize,w 360,h 240
    Promise

    Promise产生的目的 Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。 回调函数解决异...

文集作者