文档章节

javascript之call和apply的简单用法

指尖残雪
 指尖残雪
发布于 2016/05/22 23:57
字数 210
阅读 6
收藏 0

call apply  简单的用法:绑定一些函数 用于传递参数 调用 

简单的使用:

function sum(x , y){
<span style="white-space:pre">	</span>return x+y;
}
function call1(num1 , num2){
	return sum.call(this , num1 , num2);
}
function apply1(num1 , num2){
	return sum.apply(this , [num1,num2]);  <pre name="code" class="javascript"><span style="white-space:pre">	</span>//return sum.apply(this , arguments);
}alert(call1(10 , 20));alert(apply1(20,40));

call, apply方法区别是,从第二个参数起, call方法参数将依次传递给借用的方法作参数, 而apply直接将这些参数放到一个数组中再传递, 最后借用方法的参数列表是一样的.

扩充作用域

window.color = 'red';
var obj = {color:'blue'};
var obj2 = {color:'yellow'};
function showColor(){
	alert(this.color);
}
showColor.call(window);
showColor.call(obj);
根据传入的对象不同this指代不同,颜色也不一样。

如果不使用call方法,需要obj.showColor=showColor;       obj.showColor();

本文转载自:http://blog.csdn.net/bq1073100909/article/details/48637423

共有 人打赏支持
指尖残雪
粉丝 7
博文 73
码字总数 0
作品 0
上海
后端工程师
JavaScript中call()与apply()有什么区别?

今天读《JavaScript权威指南》时发现其中有段代码用到了apply方法用于递归实现数组的展开。可是我不懂这个函数的用法,因此查了一下,将资料整理如下。 Javascript的每个Function对象中有一个...

小微
2012/08/27
0
1
JavaScript中call()与apply()区别

我有时发现有道云笔记其中有段代码用到了apply方法用于递归实现数组的展开。可是我不懂这个函数的用法,因此查了一下,将资料整理如下。 Javascript的每个Function对象中有一个apply方法: ...

唐俊-
2013/12/30
0
0
javascript“普通”函数中的this,以及call,apply用法

从this开始说起 首先看下面这段代码, 定义一个函数,弹下this, <script type="text/javascript"> function toolmao(){ alert(this); } toolmao(); </script> 使用chrome测试以上代码,可以看......

街边
2013/12/18
0
0
[译] JavaScript 开发者经常忽略或误用的七个基础知识点

JavaScript 本身可以算是一门简单的语言,但我们也不断用智慧和灵活的模式来改进它。昨天我们将这些模式应用到了 JavaScript 框架中,今天这些框架又驱动了我们的 Web 应用程序。很多新手开发...

_大雁
2013/09/08
0
0
JavaScript 开发者经常忽略或误用的七个基础知识点

 JavaScript 本身可以算是一门简单的语言,但我们也不断用智慧和灵活的模式来改进它。昨天我们将这些模式应用到了 JavaScript 框架中,今天这些框架又驱动了我们的 Web 应用程序。很多新手开...

木木情深
2013/10/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

《netty入门与实战》笔记-05:netty内置的channelHandler

Netty 内置了很多开箱即用的 ChannelHandler。下面,我们通过学习 Netty 内置的 ChannelHandler 来逐步构建我们的 pipeline。 ChannelInboundHandlerAdapter 与 ChannelOutboundHandlerAdap...

Funcy1122
26分钟前
3
0
帧动画(wifi信号动态动画)

准备六张wifi不同信号强度的素材图片,复制到drawable目录中 在drawable目录中新建frame文件,并编写代码 <animation-list xmlns:android="http://schemas.android.com/apk/res/android"> ...

lanyu96
47分钟前
3
0
快速get到学习Linux操作系统的点

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能够运行主要的UNIX工具软件、网络协议和应用程序。它支持32位...

问题终结者
55分钟前
1
0
Django2 model操作数据库

1.将应用(如learn)添加到安装应用配置中 将我们新建的应用(learn)添加到 settings.py 中的 INSTALLED_APPS中,告诉Django有这么一个应用。 INSTALLED_APPS = [ 'django.contrib.ad...

MichaelShu
57分钟前
2
0
SpringBoot基础篇Bean之条件注入之注解使用

更多Spring文章,欢迎点击 一灰灰Blog-Spring专题 bean的条件注入,除了前面一篇博文中介绍的通过@Conditional注解配合Condition接口的实现之外,还提供了更多简化的注解使用方式,省略了自己...

小灰灰Blog
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部