深入理解JavaScript系列
Jacky-Summer
不是因为看到希望才去努力,而是努力后才会看到希望!
展开
-
深入理解JavaScript之作用域链与闭包
作用域作用域是指程序源代码中定义变量的区域。实际上描述的就是查找变量的范围,作用域必须有的两个功能就是存储变量以及查找变量,作用域就是发挥这两个作用以及更多作用的规则。作用域规定了如何查找变量,也就是确定当前执行代码对变量的访问权限。词法作用域和动态作用域词法作用域:(静态作用域)函数的作用域在函数定义的时候就决定了。动态作用域:函数的作用域是在函数调用的时候才决定的。JavaS...原创 2020-03-01 22:44:44 · 276 阅读 · 0 评论 -
深入理解JavaScript之 new 原理及模拟实现
1.定义new 运算符创建一个用户定义的对象类型的实例或具有构造函数的内置对象的实例先看看 new 实现了哪些功能, 先来看一段代码:function Person(age) { this.age = age;}Person.prototype.getAge = function() { console.log("年龄为:" + this.age );}var pe...原创 2020-02-22 21:49:06 · 287 阅读 · 0 评论 -
深入理解JavaScript之原型与原型链
1.原型prototype原型是一个对象,把prototype称为原型对象,prototype可以让所有的对象实例共享它包含的属性和方法。JavaScript规定,每一个函数都有一个prototype对象属性,指向另一个对象。prototype对象属性的所有属性和方法都会被构造函数的实例继承。2.只有函数有prototype属性js分为函数对象和普通对象,每个对象都有__proto__属性...原创 2020-02-16 11:44:41 · 303 阅读 · 0 评论 -
深入理解JavaScript之执行上下文和变量对象
继续接着上篇文章,上篇我们说到函数上下文的结构可表示为const ExecutionContextObj = { VO: window, // 变量对象 ScopeChain: {}, // 作用域链 this: window};即每个函数上下文,都要有这三个重要属性:变量对象(Variable object, VO)作用域链(Scope chain)...原创 2019-11-28 21:20:33 · 343 阅读 · 0 评论 -
深入理解JavaScript之执行上下文和执行栈
都说想成为出色的JavaScript 开发者,就要深入学习 JavaScript 程序内部的执行机制,最近学了一遍JS的执行上下文和执行栈,以此作总结。首先先来了解几个专业概念EC:函数执行环境(或执行上下文),Execution ContextECS:执行环境栈,Execution Context StackVO:变量对象,Variable ObjectAO:活动对象,...原创 2019-11-27 23:54:50 · 341 阅读 · 0 评论 -
深入理解JavaScript之实现继承的7种方式
1.原型链继承核心:将父类的实例作为子类的原型首先,要知道构造函数、原型和实例之间的关系:构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实例都包含一个原型对象的指针。function Father(){ this.name = '父类的名字';} Father.prototype.getFatherName = function(){ consol...原创 2019-11-23 17:52:28 · 232 阅读 · 0 评论