
JS学习之路
文章平均质量分 63
Eric不会敲代码
喜欢前后端编程
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JS中call和apply的实现原理
在JS中的Object对象的原型链上存在着两个函数 call和apply,其主要作用是将调用的函数的this指向目标对象即 Object.call(target_ele); 在我的另一篇文章中也详细阐述了call和apply的用法,这里就不多做赘述了。 这里call有两个变量,一个是改变后的this目标指向的元素,另一个是向Object函数传递的参数组。 实现思路: 这里由于Object对象是一个函数对象,所...原创 2021-09-18 19:39:49 · 570 阅读 · 0 评论 -
JS中混合模式Mixin的实现
在继承中,处理单一继承,还有多继承,若想在JS中实现多继承,就必须用到混合模式Mixin。其原理是用过对象的追加方法assign对目标对象追加要实现的类: letData={ show:function(){ console.log('IamDatashowfunciton'); } } letUser={ getName:function(){ console...原创 2021-09-17 21:27:53 · 279 阅读 · 0 评论 -
JS中的原型
什么是原型: 我们可以将原型理解为Java或C#中父类的概念,但并不完全等同。 例如: letarr=newArray(); 我们创建了一个数组arr,arr是通过new 关键字实例化的Array对象,我们称Array为arr的原形。我们打印一下arr的结构,我们发现arr的Prototype就是指向Array 展开arr的原形Array我们可以发现 Array的原形为Object类型,而Object之上就没有原型了所以Object的原型为null,也就是Js原生的...原创 2021-09-17 18:52:03 · 536 阅读 · 0 评论 -
JS作用域、闭包、闭包引发的内存泄漏问题
作用域: 所谓作用域是指函数能够影响的范围,通常在这个范围内存在着各种常量、变量、函数等。同时在JS中还存在着作用域链,就是在一个作用域中包含着其他作用域。 例如: functionNewFun(){ vara=0; console.log(a); } NewFun(); console.log(a); 上述代码在访问变量a时,只有在NewFun方法的作用域中打印a才能正确打印值,而在NewFun函数的作用域范围外,则会提示...原创 2021-09-13 12:29:12 · 340 阅读 · 0 评论 -
apply和call以及bind的区别
在写js时我们会经常使用apply、call、bind快速完成一些重复性大的计算和操作。 apply函数可以传递两个参数,第一参数是改变原有函数的this指针,使其指向第一个参数,第二个参数用来传递一个数组,数组的内容是要传递的变量,可以把理解apply函数为一些语言的继承,但与继承不同,废话少说上代码: let mydata = { user_name: '张三', user_age: 18 } function UserLoad() {原创 2021-09-12 13:46:26 · 148 阅读 · 0 评论 -
JS关于this在函数中的指向问题
说实话这个问题一开始学的时候有点迷,但是仔细思索之后就感觉非常明朗. 废话不多说我们直接上代码: var name = '小二'; let user = { name: '张三', obj: function() { let user = { name: '李四', obj: function() { console.log(t原创 2021-09-12 12:53:20 · 145 阅读 · 0 评论