数码资讯
javascript调用函数方法的几种方法
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
javascript语法灵活,功能相同,有五种或六种实现原型的方法,是不少见的,继承和异步的特点再加上一些反人类,使人更加困惑。
在Javascript中,该方法可以用以下方式执行:
1.func()调用,这是最直接、最常见的方式,也与一般人的思维逻辑,但在某些情况下,也存在一些不足之处,下面将解释。
2。(函数(精){ })(窗口)、匿名方法调用,在构造名称空间、匿名方法后面的括号中参数和相应参数中更有用。
3.func.bind(某物)(),Mozilla手册提到绑定在ECMA-262第五版的新功能,这是上市的一种方式,打电话是因为它弥补了域名不能绑定在直接调用的缺陷。
4.func.call(),这是说的第二种方式,和调用的方法是在每个方法的原型定义执行当前方法。
5.func.apply(),调用的孪生兄弟。
(功能)
这是为最常见的方式,可以在任何语言中无处不在,(x,y)功能可以通过不同的参数,有些语言,如PHP,java,这个电话就足以解决所有问题。但Javascript是一种功能性的语言,和闭包的概念和一种奇怪的关键词,这,确定此方法调用的不足。这应该被解释为代码的电流范围,将与代码变更的不同部分,但在某些情况下,我们不希望这样的改变,如一些DOM事件绑定,我们当然不希望他们被称为当这是转移到窗口对象,但有时真的,例如,下面的代码。
复制代码代码如下所示:
var = { };
函数(x){
console.log(本);
};
a.onclick =函数(){
变量x=100;
函数(x);
};
A.onclick();
一个可以被认为是网页中的链接,因为我们只想被定义方法绑定到onclick事件,而不是立即调用它,这种方法有一个参数,所以我们需要使用一个匿名的方法把他转移到一个onclick事件。这这种功能成为一个全局对象窗口的问题,显然不是我们想要的。在这个时候,通过直接调用()是不可能的,所以我们需要把这以外的功能的功能的方法。所以有绑定,电话,申请方法。
绑定
绑定的目的非常简单,返回与此对象绑定的相同方法。
复制代码代码如下所示:
var = { };
函数(x){
console.log(本);
};
a.onclick =函数(){
变量x=100;
Func.bind(本)(x); / /绑在这里
};
A.onclick();
这样,这的onclick事件不会像无头苍蝇到处跑。
电话申请
调用和应用必须放在一起,因为它们非常相似,它们都支持多个参数,第一个参数是要绑定的对象。第二个参数是它们之间的区别。电话使用独立参数作为调用方法的进入,将使用一个数组作为输入,有时候我们不想改变这个目标,但是我们要人为地将他绑在其他物体上,这一次调用和应用是非常好的。(不是说你不能使用绑定,但似乎将出现晚,也许浏览器不兼容)。栗子:
复制代码代码如下所示:
= {
函数(){
这个,x=1;
},
X:0
};
B = {
答:A,
X:20
};
对于(var i = 0;i < 10;i + +){
b.a.func();
}
console.log(内);
console.log(b.x);
在A和B物体上面有x。我们希望功能可以修改相应的X有针对性的方式,而是直接调用只能修改X的功能范围,这是a.x.if你修改代码,你可以改变b.x目的
复制代码代码如下所示:
= {
函数(){
这个,x=1;
},
X:0
};
B = {
答:A,
X:20
};
对于(var i = 0;i < 10;i + +){
b.a.func.call(B); / /绑定到B
}
console.log(内);
console.log(b.x);
栗子不好,有点牵强,但这是一个非常混乱的代码风格,与应用场景,但不到处可用。
在Javascript中,该方法可以用以下方式执行:
1.func()调用,这是最直接、最常见的方式,也与一般人的思维逻辑,但在某些情况下,也存在一些不足之处,下面将解释。
2。(函数(精){ })(窗口)、匿名方法调用,在构造名称空间、匿名方法后面的括号中参数和相应参数中更有用。
3.func.bind(某物)(),Mozilla手册提到绑定在ECMA-262第五版的新功能,这是上市的一种方式,打电话是因为它弥补了域名不能绑定在直接调用的缺陷。
4.func.call(),这是说的第二种方式,和调用的方法是在每个方法的原型定义执行当前方法。
5.func.apply(),调用的孪生兄弟。
(功能)
这是为最常见的方式,可以在任何语言中无处不在,(x,y)功能可以通过不同的参数,有些语言,如PHP,java,这个电话就足以解决所有问题。但Javascript是一种功能性的语言,和闭包的概念和一种奇怪的关键词,这,确定此方法调用的不足。这应该被解释为代码的电流范围,将与代码变更的不同部分,但在某些情况下,我们不希望这样的改变,如一些DOM事件绑定,我们当然不希望他们被称为当这是转移到窗口对象,但有时真的,例如,下面的代码。
复制代码代码如下所示:
var = { };
函数(x){
console.log(本);
};
a.onclick =函数(){
变量x=100;
函数(x);
};
A.onclick();
一个可以被认为是网页中的链接,因为我们只想被定义方法绑定到onclick事件,而不是立即调用它,这种方法有一个参数,所以我们需要使用一个匿名的方法把他转移到一个onclick事件。这这种功能成为一个全局对象窗口的问题,显然不是我们想要的。在这个时候,通过直接调用()是不可能的,所以我们需要把这以外的功能的功能的方法。所以有绑定,电话,申请方法。
绑定
绑定的目的非常简单,返回与此对象绑定的相同方法。
复制代码代码如下所示:
var = { };
函数(x){
console.log(本);
};
a.onclick =函数(){
变量x=100;
Func.bind(本)(x); / /绑在这里
};
A.onclick();
这样,这的onclick事件不会像无头苍蝇到处跑。
电话申请
调用和应用必须放在一起,因为它们非常相似,它们都支持多个参数,第一个参数是要绑定的对象。第二个参数是它们之间的区别。电话使用独立参数作为调用方法的进入,将使用一个数组作为输入,有时候我们不想改变这个目标,但是我们要人为地将他绑在其他物体上,这一次调用和应用是非常好的。(不是说你不能使用绑定,但似乎将出现晚,也许浏览器不兼容)。栗子:
复制代码代码如下所示:
= {
函数(){
这个,x=1;
},
X:0
};
B = {
答:A,
X:20
};
对于(var i = 0;i < 10;i + +){
b.a.func();
}
console.log(内);
console.log(b.x);
在A和B物体上面有x。我们希望功能可以修改相应的X有针对性的方式,而是直接调用只能修改X的功能范围,这是a.x.if你修改代码,你可以改变b.x目的
复制代码代码如下所示:
= {
函数(){
这个,x=1;
},
X:0
};
B = {
答:A,
X:20
};
对于(var i = 0;i < 10;i + +){
b.a.func.call(B); / /绑定到B
}
console.log(内);
console.log(b.x);
栗子不好,有点牵强,但这是一个非常混乱的代码风格,与应用场景,但不到处可用。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。