自定义博客皮肤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-apply-bind函数底层封装

首先还是那三步,方法给谁用的?定义在哪里?怎么使用?了解了这三步,封装起来就思路就很清晰了call-apply-bind这三个方法都是用来改变函数中的this指向,所以第一步来思考一下 函数中的this都能指向哪里呢函数的this指向this是在调用函数时,函数所在的执行上下文所决定的1.普通的全局函数调用时,this指向window;2.定时器的回调函数,this指向window;3.事件的回调函数,this指向他的调用者4.构造函数中的this指向创建出来的实例对象5.对象中的方法,th

2020-08-30 11:34:55 229

原创 数组方法filter-map-some-reduce底层封装

进过上一篇的forEach函数的封装,相信大家对数组中的其他几个方法也都能封装出来,这里就不再过多的说明直接上代码。filter方法filter方法通过条件判断return true或false来过滤数组并返回过滤后的数组。用法:结果:map方法用于对数组的每一项元素进行修改。用法:结果:some方法查询数组是否有满足条件的值,没有返回false,有就终止循环返回true用法:结果:reduce方法reduce方法用于数组的累加计算,可以传入一个累加的初始值用法

2020-08-23 15:54:45 371

原创 数组方法之forEach底层封装

forEach方法是es5新增的数组方法,用于数组的循环遍历,只有一个参数,需要传入一个函数,很多人说是有三个参数,其实这种说话是错误的,是他的参数函数有三个形参,而不是forEach方法有三个参数。1. 原生forEach方法的使用(1)forEach方法接受一个函数参数,该函数参数中有三个形参,当然有些形参用不到就可以不声明。(2)第一个形参为遍历数组的每一项;第二个形参为遍历数组的索性好;第三个参数为遍历数组的本身(3)forEach方法可以在所有的数组实例中使用。下图是forEach的基本

2020-08-23 01:04:58 1488 1

原创 JS完整版原型链剖析之完整版

争对上两篇遗留的问题构造函数和Object构造函数__proto__属性执行的问题,我们可以分析出最终他们的原型链(即对象原型的对象原型)最后肯定会执行null不然就会一直指向下去最终版原型链构造函数和Object构造函数指向的同一个原型对象(Function构造函数的原型对象),而这个原型对象的__proto__属性指向的Object的原型对象上,而Object的原型对象的__proto__指向的是null,而Function函数的__proto__属性和prototype属性指向的是同一个原型对象

2020-08-22 00:13:07 204

原创 JS完整版原型链剖析之最实用的原型链

上一篇介绍了最基本的原型链,并触发了一系列的疑问本篇解决原型的__proto__属性又指向谁。1. 字面量创建对象通过字面量创建对象 let = {}; 和通过构造函数创建的对象(实例对象)又有什么区别呢?其实通过let a = new Object(); 创建对象是一样的,字面量的形式是new 创建对象的语法糖,相同数组和函数也可通过new创建例如:let arr = new Array(); let fn = new Function(‘var a = 1;’)(这里就不对参数的传递对过多的说

2020-08-21 23:17:21 192

原创 JS完整版原型链剖析之最基本的原型链

1. __proto__属性通过new 构造函数得到一个实例对象,而JS中每个对象身上都有一个属性**proto**,该属性值指向该对象的对象原型上2. constructor属性对象的对象原型上有一个constructor属性用来指向对应的构造函数3. prototype属性JS中每个构造函数身上都有一个属性prototype,用来指向构造函数的原型对象。对于同一个构造函数他的多个实例对象都指向同一个对象原型,也就是该构造函数的原型对象,(这里的名词可能有点绕,记住构造函数的prototype属

2020-08-21 17:29:57 155

原创 数据类型全检测

常用的2种检测数据类型的方法 typeof – instanceof 都有一些局限性而自定义detectionDataType函数, 成为封装组件,参数的检测必备函数。通过创建单个js文件可以导入detectionDataType函数有下列三种导入方式1.es5语法通过创建js文件将下列代码导入,在html页面中引用,在在winodw中挂载了detectionDataType方法2.es6语法浏览器对es6语法export不支持,所以使用时需要对该文件进行打包处理,通过import 方法导

2020-08-21 01:58:59 172

空空如也

空空如也

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

TA关注的人

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