
JavaScript高级设计
白马飒踏
这个作者很懒,什么都没留下…
展开
-
Javascript深入认识(5)——函数
函数声明 函数声明比变量声明具有更为优先的执行顺序,即我们常常提到的函数声明提前。因此我们在执行上下文中,无论在什么位置声明了函数,我们都可以在同一个执行上下文中直接使用该函数。 fn(); // function function fn() { console.log('function'); } 函数表达式 函数表达式使用了var进行声明,按照var的规则进行判断,即变量声明。 ...原创 2020-05-07 17:34:46 · 134 阅读 · 0 评论 -
Javascript深入认识(6)——this的问题
文章目录误区:定义:全局对象中的this函数中的this在非strict情况下在'use strict'情况下使用call,apply显示指定的this 误区: 对于this的理解,以前一直以为是谁调用了,this就指向谁,这样理解可能会有偏差。 定义: this的指向,是在函数被调用的时候确定的,也就是执行上下文被创建时确定的。 下面这个例子的this var a = 10; var obj...原创 2020-05-06 13:45:02 · 419 阅读 · 0 评论 -
这个妞是什么?--Javascript中的new详解
先看这个代码: var Person = function (name, age) { this.name = name; this.age = age; this.gender = ['man','woman'] } var person1 = new Person('p1','10') var person2 = Person('p2','20') console.lo...原创 2020-05-03 23:56:29 · 139 阅读 · 0 评论 -
Javascript深入认识(4)——作用域链
必备知识: 基础数据类型与引用数据类型 内存空间 垃圾回收机制 执行上下文 变量对象与活动对象 作用域 和执行上下文的区别: JavaScript代码的整个执行过程,分为两个阶段, 编译阶段:由编译器完成,将代码翻译成可执行代码,这个阶段作用域规则会确定。 执行阶段:由引擎完成,主要任务是执行可执行代码,执行上下文在这个阶段创建。 作用域链 结合执行上下文的生命周期,得出下图: 作用域链...原创 2020-04-26 16:01:18 · 151 阅读 · 0 评论 -
Javascript深入认识(3)——变量对象
上一篇中,我们知道,当函数被调用时,就会创建执行上下文(执行环境)。 一个执行上下文的生命周期分成两部分: 创建阶段 执行上下文分别创建对象,建立作用域链,以及确定this的指向。 代码执行阶段 执行代码,完成变量赋值,函数引用,以及执行其他代码 变量对象 变量对象的创建,依次经历了以下几个过程。 建立arguments对象。检查当前上下文中的参数,建立该对象下的属性与属性值。 检查当前上...原创 2020-04-26 15:17:00 · 156 阅读 · 0 评论 -
Javascript深入认识(2)——执行上下文
文章目录原创 2020-04-26 13:35:54 · 107 阅读 · 0 评论 -
Javascript深入认识(1)——内存空间
文章目录1. 栈数据结构2. 堆数据结构3. 队列4. 基础数据类型和引用数据类型--基础数据类型--引用数据类型5.内存管理空间 1. 栈数据结构 先进后出,后进先出 2. 堆数据结构 树状结构,可以随机存取。就像是书架,知道书名就可以索取想要的书 3. 队列 先进先出(FIFO) 4. 基础数据类型和引用数据类型 –基础数据类型 JavaScript的基础数据类型往往都会保存在变量对象中。...原创 2020-04-24 13:42:56 · 163 阅读 · 0 评论