自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 Call的实现详细解析

先来复习一下call的用法:改变this的指向,同时可以接受参 var a = 50 const obj = { a: 30 } function test() { let a = 10 console.log(this); console.log(this.a); } test.call(objA) 如果这里不用call改变this的指向,那么结果为a=50.因为此时的this指向wind

2022-01-08 19:56:52 856

原创 New操作符实现原理

为了方便测试与理解,我们先来创建一个构造函数 function Point(x, y, z) { this.x = x; this.y = y; this.z = z; } 然后调用我们自己封装的new方法,可以看到实例化对象可以正常打印。 var p = objectFactory(Point, 5, 2, 3) console.log(p); 再详细介绍它的实现原理之前,需要先理解以下几个方法: 1.Object..

2021-12-29 15:39:20 677

原创 专栏系列【JS部分方法底层原理剖析】--序

在正式内容之前,有一些自己当初自学前端的感悟。在刚入门时,有大量的API、方法等。总是记不住,光是数组的API就有10多个...。(这一点也是一个优势吧,在公司后台写VB时。真的是要啥啥没有,都得自己造轮子,)。一段时间不用,就又记不住了。例如背面试题的时候,问NEW操作符在创建对象时做了哪些事?相信很多人都信手拈来,简直就是送分题啊。但一段时间不接触后还记得这些面试话术的人有多少呢?而且js的很多方法具有高度的相似性,很容易混淆。比如call、apply、bind。这三兄弟我当时是看了又忘,看...

2021-12-22 16:31:53 281

原创 一道关于this指向、闭包、作用域的综合题目引发的思考

今天遇到一道很有意思的this指向的题目,通过对这道题的逐步剖析和延伸,能对匿名函数、this指向、作用域、箭头函数的指向等有一个更加深刻的认识。我们先来看代码 var number = 2; var obj = { number: 3, db1: (function(){ console.log(this); this.number *= 4; return function(){ console.log(this); this.number *= ...

2021-12-21 22:30:25 266 1

原创 async的理解

网上介绍async的文章有很多,但很多初学者在第一次接触时往往看得云里雾里。本文通过对一段代码执行过程的解析,希望能帮助到更多的r 1.首先要明确async的本质是Generator的语法糖

2021-12-20 22:29:13 516

原创 JS高级重点知识

一.对象创建的方式 a.字面量创建 优点:简单 缺点: 1.无法批量创建相同对象 2.无法通过迭代的方式动态创建对象 b.工厂模式创建 functionFactory(height,weight){ varobj=newObject() obj.height=height obj.weight=weight ...

2021-08-01 10:26:07 114

原创 JS模拟继承方式对比

1.冒充继承:通过修改父级构造函数的this指 //人类 functionPeople(name,age,height){ this.name=name this.age=age this.height=height this.show=function(){ console.log(`${this.name}的年...

2021-07-31 10:24:59 67

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除