flash as3.0中的arguments是啥意思

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flash as3.0中的arguments是啥意思相关的知识,希望对你有一定的参考价值。

已经学了一下午了,还是不懂这个arguments具体是什么意思,帮助文件也看了,但是也看不懂。求过来人回下。谢谢

arguments是参数的意思,你调用这个函数的时候,需要传入一个类型相同的变量。例如下面的函数里,a和b都是arguments(参数),传入的值类型是Number。
function addNum(a:Number, b:Number):Number
return a+b;

调用的方法例如:
var num:Number = addNum(5, 9);
如果你使用时写成这样就会报错:
var num:Number = addNum("5", "9");追问

能再说说吧,还是不懂唉

追答

arguments是用于存储和访问函数参数的参数对象。也就是本身没有实际意义,你传入什么对象它就是什么对象。例如:
traceMyString("Hello, my friend.");
function traceMyString(str1:String):void

trace(str1);//输出:Hello, my friend.
trace(arguments.callee == traceMyString);//输出:true 因为这个函数的引用就是traceMyString
trace(arguments.length);// 输出:1(因为传入了1个参数)
trace(arguments[1]);//输出:undefined(因为没有第2个参数)



traceMyString2("Hello.", "一直很宁静", "Nice to meet you.");
function traceMyString2(str1:String, str2:String, msg:String):void

trace(str1);//输出:Hello.
trace(arguments.length);//输出:3(因为传入了3个参数)
trace(arguments[0]);//输出:Hello.(因为第1个参数就是“Hello.”)
trace(arguments[1]);//输出:一直很宁静(因为第2个参数就是“一直很宁静”)
trace(arguments[2]);//输出:Nice to meet you.(因为第3个参数就是“Nice to meet you.”)

这下应该明白了吧。

追问

恩 谢谢你 明白了 能再说说这个arguments.callee 吗?这个还不懂,新手谅解下 谢谢

追答

callee 属性是对当前正在执行的函数的引用,你知道这个就行了。
呵呵,你的学习精神可嘉,对于新手的话,不必纠结于这个arguments,这个平时几乎就用不到。先把最常用的东西掌握好。

参考技术A 应该是函数参数的数组。它自动存储函数参数追问

能再具体点吗

追答

function (a:Number,b:uint,c:Object):void

trace(arguments.length);

function(2.5,5,10);你测试一下这个代码就知道是啥意思了,输出应该是数组的长度3

追问

也非常谢谢你。

flash as3中event/evt/e三者的区别是啥?

参考技术A 没区别 那个只是一个变量名罢了

你喜欢写成 a b c d 都没所谓
只不过一般有几种程序员风格罢了

e:Event 是javascript程序员的风格 因为少写点字符 省网络流量
event是as3程序员的风格
_evt或evt是有一定面向对象程序经验的程序员的风格

本人偏好习惯使用 _evt本回答被提问者采纳

以上是关于flash as3.0中的arguments是啥意思的主要内容,如果未能解决你的问题,请参考以下文章

flash as3.0 图片自动添加

flash cs5 用as3.0给按钮加链接

the hash for the file is not present in the specified catalog file,是啥意

flash as3.0里怎样修改元件的缩放中心点,让缩放的中心点一直在舞台中心位置?

flash as3.0获取外部视频总的时间长度 和视频已播放的时间长度

来人啊。。。。flash as3.0 box2d停止刚体移动问题。