继承之组合继承
2021-05-31
组合继承(伪经典继承) 组合继承综合了原型链和盗用构造函数,将两者的优点集中起来了。 基本思路是: 1. 使用原型链继承原型上的属性和方法 2. 再通过盗用构造函数继承实例属性 如下例子: js function SuperType(name){ this.name = na...
425 字
|
2 分钟
继承之盗用构造函数
2021-05-31
盗用构造函数(对象伪装) 为了解决原型中包含引用值的问题,引出盗用构造函数的一种方法 基本思路:在子类的构造函数中调用父类的构造函数,使用aplly()和call()方法以新创建的对象为上下文执行构造函数。 例如: js function SuperType(){ this.numb...
406 字
|
2 分钟
继承之原型链
2021-05-31
继承之原型链 首先再明确一下构造函数,原型,实例之间关系 1. 每一个构造函数都有一个原型对象 2. 原型对象有个属性叫做constructor指回构造函数 3. 实例是用构造函数创建出来的,它有一个指针[[Prototype]]指向其构造函数的原型,也可以说是实例的原型 按照上面的说法,假设...
697 字
|
3 分钟
算法之滑动窗口
2021-05-30
leetcode第209道题目 题目是 题解 js / @param {number} target @param {number[]} nums @return {number} / var minSubArrayLen = function (target, ...
94 字
|
1 分钟
创建对象之原型模式
2021-05-30
原型模式 每一个函数都会创建一个prototype的属性 原型方式 js function Person(){} Person.prototype.name = 'weng'; Person.prototype.age = 23; Person.sayName = function(){ ...
3242 字
|
16 分钟
创建对象之构造函数模式
2021-05-28
ES中的构造函数是用来创建特点类型的对象的,像Object和Array这样的原生构造函数,直接再环境中能用。 当然也可以自定义构造函数 就得自定义属性和方法了 定义构造函数 例如下面是一个工厂模式的函数,将他改造成构造函数形式 js function createPerson(name,...
982 字
|
5 分钟
js的类型转换
2021-05-28
自我检测 js [] == ![] // - true D部分有答案 显式类型转换和隐式类型转换 强制转换经常发生在动态类型语言运行时。我们经常会写类型转换,如: js var a=1 var b=a+'' // 隐式 '1' var c=String(a) // 显式 '1...
2385 字
|
12 分钟