as3 Function 中的call与apply方法
apply方法,作用跟call一样,也可以用来改变函数执行时,this指针的指向,区别在于apply方法要求第二个参数必须是数组形式
例子,舞台上添加名为a和b的实例mc
案例1:
a.getNumValue=function(num:uint){
trace(this.name,num)
};
a.getNumValue.call(a,2);
a.getNumValue.call(b,2);
a.getNumValue.apply(b,[1]);
/* trace结果
a 2
b 2
b 1
*/
案例2:
function getNumValue(num:uint)
{
trace(this.name,num);
}
this.getNumValue.call(a,2);
this.getNumValue.call(b,2);
this.getNumValue.apply(b,[1]); /* trace结果
root1 2
root1 2
root1 1
*/
通过案例1和2得出,需要注意,只有在匿名函数下,才能使用call或者apply显式转换this指向
as3 Function 中的call与apply方法的更多相关文章
- JS中的call()和apply()方法(转)
		
转自:http://uule.iteye.com/blog/1158829 JS中的call()和apply()方法 博客分类: JS 1.方法定义 call方法: 语法:call([thisOb ...
 - JS中的call()和apply()方法
		
1.方法定义 call方法: 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象. 说明: call ...
 - javascript中的call()和apply()方法的使用
		
1.方法定义 call方法: 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象. 说明: call ...
 - 笔记——Function类型 及其 call、apply方法
		
每个函数都是Function类型的实例.函数有三种定义方式和两个内部属性arguments和this. 同时函数也是对象,也有属性和方法.本篇主要其call()和apply()方法 属性 length ...
 - JS中的call()和apply()方法理解和使用
		
1.方法定义call方法: 语法:obj.method.call(thisObj[,arg1[, arg2[, [,.argN]]]]) 定义:调用对象(obj)的一个方法(method),以另一个对 ...
 - 浅谈javascript中的call与apply方法
		
call方法与apply方法都是为了改变函数体内部this的指向. call方法与apply方法,这二者的作用完全一样,只是接受参数的方式不太一样. apply()方法: Function.apply ...
 - 理解JavaScript中的call和apply方法
		
call方法 总的来说call()有这几种作用:1.可以借用另一个对象的方法.2.改变this的指向(重要).3.将arguments数组化.下面详细介绍这三种作用: 1.可以借用另一个对象的方法:当 ...
 - 【转】JS中的call()和apply()方法
		
原文:http://uule.iteye.com/blog/1158829 1.方法定义 call方法: 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) ...
 - js中call()方法和apply方法的使用
		
1. 方法定义 call方法: 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象. 说明: call ...
 
随机推荐
- 【python】实例-用户登录系统
			
有N,E,Q三个选择,若选择Q或者中断,则系统退出.若其他选项,则持续让用户选择. #!/usr/bin/env python db = {} def newuser(): prompt = 'log ...
 - Java初学几个程序背诵
			
1.Hello world class first { public static void main(String[] args){ System.out.println("Hello w ...
 - MySqli 中预处理类 stmt
			
非select 语句(没有结果集的) 1.建立连接数据库 $mysqli=new mysqli("localhost","root","", ...
 - ProtocolBuffers (二) android与PC,C#与Java 利用protobuf 进行无障碍通讯【Socket】
			
protobuf 是什么? Protocol buffers是一种编码方法构造的一种有效而可扩展的格式的数据. 谷歌使用其内部几乎RPC协议和文件格式的所有协议缓冲区. 参考文档 http://c ...
 - samba 挂载windows共享文件夹
			
先转载一片文章 centOS下yum安装配置samba 地址 http://blog.csdn.net/linglongwunv/article/details/5212875 遇到问题1 # ...
 - git: fatal: Could not read from remote repository
			
This is probably an Intellij problem. Your key are managed natively by ssh, and Intellij has it's ow ...
 - Qt Creator 预览QtCreator中的界面
			
当在QtCreator界面编辑器中放置好布局和控件之后,组合键 Alt + Shift + R 可以实现预览功能. 也可以通过以下方式更改快捷键: 具体路径 ...
 - 自己写的 读写 ini 配置文件类
			
/// <summary> /// 不调用系统API 读写 ini 配置文件 /// </summary> public class RW_ini { #region ==== ...
 - shell 7echo命令
			
echo用于字符串的输出 1. 显示普通字符串 #shell #!/bin/sh echo "Hello world" echo Hello world Hello world H ...
 - Python模块之shelve
			
shelve是python的自带model. 可以直接通过import shelve来引用. shelve类似于一个存储持久化对象的持久化字典,即字典文件. 使用方法也类似于字典. 保存对象至shel ...