4.函数严格模式下
在函数中,在严格模式下,this 是未定义的(undefined)
5.事件中的this
在事件中,this 表示接收事件的元素
事件中的this
点击后按钮消失,打印this
6.构造函数中的this
构造函数中的this指向当前实例
function Person(){
this.name=‘Jack’
}
Person.prototype={
fn(){
console.log(this)
}
}
let p1=new Person()
console.log(p1) //Person {name: “Jack”}
console.log(p1.name) //Jack
p1.fn() //Person {name: “Jack”}
7.箭头函数没有this
函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象
箭头函数本身没有自己的this, 绑定定义时所在的作用域,而不是指向运行时所在的作用域。所以其内部的this指向定义该箭头函数时,外层代码块的this,即箭头函数的this指向固定化
====================================================================================
call 、bind 、 apply
这三个函数的作用是改变this指向
-
用在函数后面 例如
fn().call()
或者obj.fn().call()
,参数可以是各种类型 -
call(this指向对象,参数,...,参数)
-
apply(this指向对象,[参数,...,参数])
-
bind(this指向对象,参数,...,参数)()
由此可见,bind
的返回值是一个函数
var obj={
name:‘王富贵’,
age:‘18’,
小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注:前端)
常用的JavaScript设计模式
-
单体模式
-
工厂模式
-
例模式
函数
-
函数的定义
-
局部变量和全局变量
-
返回值
-
匿名函数
-
自运行函数
-
闭包
**