改变this指向的三种方法

1、call();可以调用函数,可以改变this指向,还可以继承类
2、apply();以伪数组形式存放
3、bind();开发使用最多,不会调用函数,改变指向但是不会立即调用函数
三者的第一个参数分别为需要指向的对象,后加参数。
应用

function Father(uname,age,sex) {
	this.uname=uname;
	this.age=age;
	this.sex=sex;
}
function Son(uname,age,sex){
	Father.call(this,uname,age,sex)
}
var son = new Son('张三',19,'男');
console.log(son);
// 可以判断数组中的最大最小值
var arry = [1,3,7,22,44,8];
var max = Math.max.apply(Math,arry);
var min = Math.min.apply(Math,arry);
console.log(max);
console.log(min);
 <button>点击</button>
    <button>点击</button>
    <button>点击</button>
//点击按钮禁用开启
        var btns = document.querySelectorAll("button");
        for (var i = 0;i<btns.length;i++) {
            btns[i].onclick=function() {
                this.disabled = true;
                setTimeout(function() {
                    this.disabled = false;
                }.bind(this), 2000);
            }
        }
  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值