javascript this、call、apply、bind

this只要未被绑定,默认就是指向window对象

<script language="JavaScript">
var name='小王',age=17;
var obj={
        name:'小张',
        objAge:this.age,
        foo:function(){
                          console.log( this.name + '年龄是' + this.age)
                         }
        }

console.log(obj.objAge);    // 17
obj.foo()                   // 小张年龄是undefined

</script>

输出结果为:
17
小张年龄是undefined

JavaScript从入门到放弃 第十一章 深入理解this指向 --小马哥老师
https://www.bilibili.com/video/BV167411v7bB?

【智能社】公开课——JavaScript的This——Blue(石川)主讲
https://www.bilibili.com/video/BV1MZ4y1H7e7

原生JavaScript实现call、apply和bind - Web前端工程师面试题讲解 --技术蛋老师
https://www.bilibili.com/video/BV1m54y1q7hc?

Js函数加括号、不加括号

函数只要是要调用它进行执行的,都必须加括号。此时,函数()实际上等于函数的返回值。当然,有些没有返回值,但已经执行了函数体内的行为,这个是根本,就是说,只要加括号的,就代表将会执行函数体代码。

不加括号的,都是把函数名称作为函数的指针,用于传参,此时不是得到函数的结果,因为不会运行函数体代码。它只是传递了函数体所在的地址位置,在需要的时候好找到函数体去执行。


函数调用都得加()
传说中的
(function() {

})();
无非就是

绿括号 -> 函数定义
蓝括号 -> 函数执行
红括号 -> 把整个函数定义包起来,定义完了再执行,看得更直观

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值