`
qishuai
  • 浏览: 38927 次
  • 性别: Icon_minigender_1
  • 来自: 南通
社区版块
存档分类
最新评论

淡淡简单描述javascript中方法apply和call

阅读更多
jquery博客最近在看原生javascript,是那本犀牛书,厚厚一本。
慢慢有条不絮的进行的学习。
看到apply()和call()不得不停留下来,仔细琢磨琢磨。
留点字迹,方便以后温习。
ECMAScript规范给所有函数定义了两个方法call()和apply()。使用这两个方法可以像调用其他对象的方法一样调用函数。call()和apply()的第一个参数都是要调用的函数的对象。在函数体内这一参数是关键字this的值。call()的剩余参数是传递给要调用的函数值。例如,要把两个数字传递给函数f(),并将它作为对象o的方法调用,试下下面的代码:
f.call(o,1,2);
这个与下面的代码相似的哦
o.m=f;
o.m(1,2);
delete o.m;
apply()方法和call()方法相似,只不过要传递给函数的参数是由数组指定的;
f.apply(0,[1,2]);
比如要找到一个数字数组中最大的数字,我们可以使用apply()方法把数组元素传递给Math.max()函数:
var bjggest=Math.max.apply(null,array_of_numbers);

转自 jquery http://www.jqueryba.com/302.html
分享到:
评论

相关推荐

    JavaScript中call与apply方法

    JavaScript中call与apply方法

    javascript中apply和call方法的作用及区别说明

    1、call,apply都属于Function.prototype的一个方法,它是JavaScript引擎内在实现的,因为属于Function.prototype,所以每个Function对象实例(就是每个方法)都有call,apply属性。既然作为方法的属性,那它们的使用...

    JavaScript中的apply和call函数详解_.docx

    在JavaScript中,`apply`和`call`是两种非常重要的函数调用方式,它们都用于改变函数内部`this`的指向以及动态传递参数。这两者的主要区别在于参数的传递方式。 首先,`this`在JavaScript中是一个关键字,它在不同...

    关于Javascript中call与apply的进一步探讨

    在JavaScript中,`call`和`apply`是两个非常重要的方法,它们都用于改变函数调用时的上下文(即`this`的值),并且可以灵活地传递参数。本篇文章将深入探讨这两个方法的用法、区别以及实际应用场景。 `call`方法...

    javascript中apply、call和bind的用法区分_.docx

    在JavaScript编程中,`apply`、`call`和`bind`这三个方法被广泛用于改变函数内部`this`的指向,这对于理解和编写复杂的JavaScript代码至关重要。虽然它们的功能相似,但在具体用法上存在一定的差异。 #### 相同之处...

    从JQuery源码分析JavaScript函数的apply方法与call方法

    从JQuery源码中分析apply和call方法,有助于我们理解这些方法在实际JavaScript库中的应用,并且加深对其工作原理的理解。 首先,我们需要明确JavaScript中的函数实际上是一个对象,其拥有自己的方法,比如apply和...

    javascript技术难点(三)之this、new、apply和call详解

    JavaScript中的this、new、apply和call是理解JavaScript面向对象编程的关键知识点。首先,我们要知道,this关键字在JavaScript中表示当前上下文的对象,但它并不像Java中的this那样始终指向同一个对象。JavaScript的...

    深化理解关于javascript中apply()和call()方法的区分_.docx

    在JavaScript中,`apply()`和`call()`方法都是用于改变函数调用时的上下文(即`this`关键字指向的对象)以及传递参数。这两个方法都隶属于`Function.prototype`,因此所有函数实例都拥有这两个方法。它们的主要作用...

    理解JavaScript的caller callee call apply

    ### 理解JavaScript中的`caller`...综上所述,理解`caller`、`callee`、`call`、`apply`以及`arguments`对象在JavaScript编程中至关重要,它们不仅增强了函数的灵活性和复用性,还提供了深入分析和调试代码的强大工具。

    javascript callApply代码示例

    javascript callApply代码示例

    js中apply与call简单用法详解.docx

    在JavaScript中,`apply`与`call`是两个非常重要的函数,它们都属于`Function.prototype`的一部分,因此每一个函数对象都拥有这两个方法。这两个方法的主要作用在于改变函数执行时的上下文环境(`this`值),这对于...

    JavaScript中的apply和call函数详解

    首先,我们需要明白在JavaScript中,函数也是对象,所以它们可以拥有自己的方法,比如toString()、call()和apply()。 在JavaScript中,函数和方法的区别通常取决于函数是如何被调用的。如果函数是作为一个独立的...

    javascript中call和apply方法浅谈

    在JavaScript中,`call`和`apply`是两种非常重要的函数调用方式,它们都用于改变函数内部`this`的指向,实现函数的...在实际开发中,理解和熟练掌握`call`和`apply`方法对于编写高效、灵活的JavaScript代码至关重要。

    开启Javascript中apply、call、bind的用法之旅模式

    总结来说,apply、call和bind是JavaScript中非常重要的函数方法,它们提供了控制函数上下文的能力,无论是直接调用函数、扩展数组元素,还是改变对象的方法调用,这些方法都是不可或缺的工具。掌握它们的用法,能够...

    apply和call方法定义及apply和call方法的区别

    在JavaScript中,`apply`和`call`方法都是Function对象的内置方法,它们的主要作用是改变函数调用时的上下文(即`this`值),并允许我们在不同对象上执行同一方法,从而实现方法的借用。这两者在功能上相似,但参数...

    浅谈javascript中的call、apply、bind_.docx

    JavaScript 中的 call、apply、bind 方法详解 JavaScript 中的 call、apply、bind 方法是 Function 对象自带的三个方法,这三个方法的主要作用是转变函数中的 this 指向,从而可以达到“接花移木”的效果。下面将对...

    简单对比分析JavaScript中的apply,call与this的使用

    在JavaScript中,`apply`、`call`和`this`都是与函数调用相关的概念,它们主要用于控制函数内部`this`的指向以及参数的传递。理解这三个概念对于编写高效的JavaScript代码至关重要。 首先,`apply`和`call`都是函数...

    Javascript 中的 call 和 apply使用介绍

    JavaScript中的`call`和`apply`是两种非常重要的函数调用方式,它们允许开发者改变函数执行的上下文,即函数内部的`this`值。这两个方法的主要区别在于传递参数的方式。 `call`方法的语法是`call(obj, arg1, arg2, ...

Global site tag (gtag.js) - Google Analytics