01 2018 档案
摘要:继承 所谓继承就是子类继承父类的特征与行为,使得子类对象具与父类相同的行为。但是javascript 是没有class、抽象类、接口等抽象概念,javascript 只有对象,那么js中是如何让对象与对象之间产生继承关系呢? 基于对象的继承 在原型链中说过,如果在对象上没有找到需要的属性或者方法引用
阅读全文
摘要:原型 原型是一个对象,每个函数对象(在javascript 之对象中说过函数也是对象 )都有一个属性(prototype)指向这个对象--原型对象,这个对象的作用是让所有对象实例共享原型对象中的属性、方法。即我们可以把公共的属性、方法写在这个原型中,所以说js中的继承是基于原型实现的; 构造函数、原
阅读全文
摘要:对象 无序属性的集合,属性可以包含基本值、对象或者函数,简单理解为对象是若干属性的集合;我们常说的面向对象(oop)编程其实是指的一种编码的思想,简单理解为用对象来封装数据,利用封装、继承、多态对代码进行复用、重构、以及解耦等; 函数也是对象 每个函数都是Function 的实例/对象,所以函数名是
阅读全文
摘要:前言 前面几篇说了执行环境相关的概念,本篇在次回顾下 执行环境(Execution context,简称EC,也称执行上下文 ) 定义了变量或者函数有权访问的数据,决定了各自行为,每个执行环境都有一个变量对象,之前我说执行环境可以先理解为 js代码执行时所在的环境,其实把上下文当做是一个对象应该差不
阅读全文
摘要:前言 在《javascript 之执行环境-08》文中说到,当JavaScript代码执行一段可执行代码时,会创建对应的执行上下文(execution context)。对于每个执行上下文,都有三个重要属性: 变量对象(Variable object,VO) 作用域链(Scope chain) th
阅读全文
摘要:前言 在《javascript 之执行环境-08》文中说到,当JavaScript代码执行一段可执行代码时,会创建对应的执行上下文(execution context)。对于每个执行上下文,都有三个重要属性: 变量对象(Variable object,VO) 作用域链(Scope chain) th
阅读全文