分类JavaScript共匹配29条公开文章。

文章
理解 js 的继承:原型链继承、构造函数继承、组合继承、原型继承、寄生继承、寄生组合继承和 ES6 class extend

JavaScript理解 js 的继承:原型链继承、构造函数继承、组合继承、原型继承、寄生继承、寄生组合继承和 ES6 class extend

原型链继承 将父类的实例作为子类的原型 优点 父类方法可以复用 缺点 父类的引用属性会被所有子类共享 子类创建实例不能向父类传递参数 构造函数继承 将父类构造函数内容复制给子类构造函数 优点 可以在 Child 中向 Parent 传参 类的引用属性不会被共享 缺点 都在构造函数中定义,每次创建实例都会初始化方法或属性 父类方法不能复用 组合继承 构造函数继承与原型链继承结合 优点 父类的方法可以…

#JavaScript#性能优化#安全
约 5 分钟 · 1284 字
1200
文章
理解 js new 操作符做了什么

JavaScript理解 js new 操作符做了什么

做了什么 创建一个空对象 对象的__proto__指向构造函数的 prototype 改变构造函数的 this 指向,指向 obj 返回这个对象 new 的实现

#JavaScript
约 1 分钟 · 126 字
900
文章
理解 js 的\_\_proto\_\_ 、prototype 和 constructor

JavaScript理解 js 的\_\_proto\_\_ 、prototype 和 constructor

__proto__ __proto__ 指向它对应的原型对象 prototype 只有函数才有 prototype 属性 每个函数创建后都有 prototype 属性,一旦把这个函数当作构造函数,调用 new 操作符,js 就会创建构造函数的实例 创建一个实例,是通过__proto__指向构造函数的 prototype 来实现继承构造函数 prototype 的所有属性和方法的 construct…

#JavaScript
约 2 分钟 · 308 字
1300
文章
Promise 源码实现

JavaScriptPromise 源码实现

Promise/A+规范 Promise 规范有 Promise/A Promise/B Promise/C Promise/D Promise/A+是 Promise/A 的升级版本 Promise 有 3 个状态:等待态(Pending)、执行态(Fulfilled)、拒绝态(Rejected) then 方法可以被一个 promise 调用多次,then 方法必须返回一个 promise 等…

#JavaScript
约 8 分钟 · 2262 字
900
文章
理解 js this 绑定的 6 种规则:默认绑定、隐式绑定(隐式丢失)、显式绑定、new 绑定、严格模式下的 this、箭头函数绑定

JavaScript理解 js this 绑定的 6 种规则:默认绑定、隐式绑定(隐式丢失)、显式绑定、new 绑定、严格模式下的 this、箭头函数绑定

默认绑定 隐式绑定(隐式丢失) 显式绑定 new 绑定 严格模式下的 this 箭头函数绑定 默认绑定 this 指向 window 例子 1:在全局环境中,this 默认绑定到 window 例子 2:函数独立调用的时候,this 默认绑定到 window 例子 3:被嵌套函数独立调用的时候,this 默认绑定到 window 例子 4:IIFE 立即执行函数实际上是函数声明后直接调用执行 相当…

#JavaScript
约 6 分钟 · 1506 字
1100
文章
理解 js 的作用域,作用域链,闭包

JavaScript理解 js 的作用域,作用域链,闭包

作用域 作用域就是执行上下文,在执行上下文中会有内存分配与执行两个阶段。变量的的生命周期:声明,初始化,赋值 变量提升 在全局作用域或者函数作用域 var 声明变量允许在声明之前使用,值为 undefined,这个就是变量提升 块级作用域中声明的变量会提升到该作用域的头部,即允许在实际声明前使用 暂时性死区 在全局作用域或者函数作用域 let 或 const 声明变量,只允许在声明之后访问,在作用…

#JavaScript
约 5 分钟 · 1412 字
1000
文章
理解 js 的数据类型,内存机制,变量引用,垃圾回收,内存泄漏

JavaScript理解 js 的数据类型,内存机制,变量引用,垃圾回收,内存泄漏

js 三种数据结构 栈:栈是一种后进先出的数据结构 队列:队列是一种先进先出的数据结构 堆:堆是一种树状结构,类似于书架,只需要知道书的名字就可以直接取出书,也类似于 JSON,每一个 key 都对应一个 value 数据类型 基本数据类型:Undefined,Null,Boolean,Number,String 和 Symbol 引用数据类型:Object,Array,Function 变量的存…

#JavaScript
约 5 分钟 · 1300 字
1000
文章
ES5 和 ES6 对象遍历方法

JavaScriptES5 和 ES6 对象遍历方法

for...in for...of Object.keys() Object.getOwnPropertyNames() Reflect.ownKeys() Object.getOwnPropertyDescriptors() for...in 遍历可枚举的自由属性或继承的属性,不包括 Symbol 属性 for...of 只能遍历可枚举的自由属性,不能遍历 Symbol 和继承属性 Object…

#JavaScript
约 2 分钟 · 454 字
1300
文章
ES5 和 ES6 数组遍历方法的使用与实现

JavaScriptES5 和 ES6 数组遍历方法的使用与实现

常见的数组遍历方法 普通 for 语句 Array.prototype.forEach Array.prototype.map Array.prototype.filter Array.prototype.reduce Array.prototype.some Array.prototype.every Array.prototype.indexOf Array.prototype.lastInd…

#JavaScript
约 7 分钟 · 1869 字
1100
文章
Set、WeakSet、Map、WeakMap

JavaScriptSet、WeakSet、Map、WeakMap

Set Set 是一个构造函数,类似于数组 Set 的成员的值都是唯一的 Set 不会发生类型转换 Set 结构没有键名,只有键值 Set 的操作 去除数组重复成员 去除字符串重复字符 Set 无法去重两个空对象 Set 的属性与方法 Set 的遍历 WeakSet WeakSet 类似 Set,也是不重复的集合,但是 WeakSet 的成员智能是对象, WeakSet 里面的引用,都不计入垃圾回…

#JavaScript
约 4 分钟 · 940 字
1100