[AS3]如何给函数传递参数

销魂祜u
2013-11-02 · 超过62用户采纳过TA的回答
知道答主
回答量:121
采纳率:83%
帮助的人:57万
展开全部
当我们给函数提供不同的参数,函数就会为我们返回不同的结果,这很有趣,也很实用。就像给一部加工机器不同的加工材料一样。参数可以是一个,也可以是多个,参数之间用逗号隔开。不是所有的函数都需要参数,这些函数只有在函数名后面跟上一对小括号就可以正确运行。 通过把参数传递给函数,AS3.0可以处理基元数据类型(包括 Boolean、Number、int、uint 和 String)和复杂的数据类型。通过值来传递基元数据类型,就是说,它们的值会被赋值给函数,从而保持原值不变。复杂数据类型通过传递引用来传递值,它传递的是实际的对象,而不是复本。顺便说下,这些规则也适用于变量分配。 打个比方吧,如果你使用计算机,你会知道复制文件和建立快捷方式的区别吧。按值传递有点像复制文件,并保留一份文件在原始位置。按引用传递,就像建立一个快捷方式,打开快捷方式就会链接到原始文件了。 看看下面的例子,第一个例子按值传递,原始文件并不改变。function passPrimitives(xParam:int, yParam:int):void { xParam++; yParam++; trace(xParam, yParam); } var xValue:int = 10; var yValue:int = 15; trace(xValue, yValue);// 10 15 passPrimitives(xValue, yValue); // 11 16 trace(xValue, yValue);// 10 15 在passPrimitives() 函数内部,xParam 和 yParam 的值递增,但这不会影响 xValue 和 yValue 的值,如上一条 trace 语句所示。即使参数的命名与 xValue 和 yValue 变量的命名完全相同也是如此,因为函数内部的 xValue 和 yValue 将指向内存中的新位置,这些位置不同于函数外部同名的变量所在的位置。function passByRef(objParam:Object):void { objParam.x++; objParam.y++; trace(objParam.x, objParam.y); } var objVar:Object = {x:10, y:15}; trace(objVar.x, objVar.y); // 10 15 passByRef(objVar); // 11 16 trace(objVar.x, objVar.y); // 11 16 objParam 参数与全局 objVar 变量引用相同的对象。
Sievers分析仪
2024-10-13 广告
是的。传统上,对于符合要求的内毒素检测,最终用户必须从标准内毒素库存瓶中构建至少一式两份三点标准曲线;必须有重复的阴性控制;每个样品和PPC必须一式两份。有了Sievers Eclipse内毒素检测仪,这些步骤可以通过使用预嵌入的内毒素标准... 点击进入详情页
本回答由Sievers分析仪提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式