call apply bind
来源:互联网 发布:hl系统线切割怎么编程 编辑:程序博客网 时间:2024/05/19 06:51
apply和call类似
区别如下
function Sum(num1,num2) { return num1 + num2; } function callSum1(num1,num2) { return Sum.apply(this,arguments);/*第二个参数是arguments或者数组*/ } function callSum2(num1,num2) { return Sum.call(this,num1,num2);/*call直接传参数*/ } alert(callSum1(10,10));alert(callSum2(20,20));为什么需要这几个函数
var a = { user:"追梦子", fn:function(){ console.log(this.user); }}var b = a.fn;b(); //undefined
我们是想打印对象a里面的user却打印出来undefined是怎么回事呢?如果我们直接执行a.fn()是可以的。
var a = { user:"追梦子", fn:function(){ console.log(this.user); //追梦子 }}var b = a.fn;b.call(a);
作用是 扩充函数的作用域
例如
window.color = 'red';var o = { color : 'blue'};function showColor() { alert(this.color);}showColor.call(this);//redshowColor.call(window);//redshowColor.call(o);//blue;
bind和call apply的区别
//showColor.bind(o);//不显示var obj = showColor.bind(o);obj();//blue实际上bind返回的是一个修改过的函数
阅读全文
0 0
- call apply 与 bind
- call()、apply()、bind()
- apply bind call区别
- call,apply,bind
- 【JavaScript】call, apply, bind
- bind apply call异同
- apply call bind区别
- bind , call and apply
- JS call bind apply
- call()、apply()与bind()
- call apply bind
- call()、apply()、bind()详解
- bind apply call
- apply,call,bind
- apply、call、bind
- call,apply,bind
- bind&call&apply
- bind、apply、call解析
- 清北学堂-D1-T3-roadwork
- week4-leetcode #6-ZigZag Conversion[Medium]
- tomcat部署
- Python使用网易邮箱发邮件
- Java数据结构详解(八)-Queue接口
- call apply bind
- ONNX demo
- 程序人生-从上帝视角看问题
- 1074. 宇宙无敌加法器(20)
- HDU-4424 Conquer a New Region(并查集)
- 手把手教你创建maven的web3.0项目
- <C++>9.类成员函数的定义
- Redis学习
- jupyter notebook无法正常启动