flash as3.0中的arguments是什么意思
已经学了一下午了,还是不懂这个arguments具体是什么意思,帮助文件也看了,但是也看不懂。求过来人回下。谢谢...
已经学了一下午了,还是不懂这个arguments具体是什么意思,帮助文件也看了,但是也看不懂。求过来人回下。谢谢
展开
2个回答
展开全部
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");
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.”)
}
这下应该明白了吧。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询