|
第十四页:多于一个参数的函数 (
)
这是我定义的一个数组:
var monkeys = new Array("mattmarg","wendy",
"kristin","tim","aaron", "luke");
var kittyphile = new Array("wendy", "ruby",
"roscoe", "tim");
var discophile = new Array("mattmarg",
"john travolta", "wendy");
var happy = new Array("tim", "wendy",
"stimpy", "aaron");
var cranky = new Array("ren", "mattmarg","luke");
随着这些数组的定义,arrayIntersect函数给出, 我们可轻而易举的发现那些网猴酷爱迪斯科:爱跳舞的网猴注意到尽管John
Travolta喜爱迪斯科,但他不在monkeys清单中,则他就不是只爱跳舞的网猴为调用该函数值,可这么来:
<a href="#" onClick="arrayIntersect('dancing
monkeys',monkeys,discophile);">dancing monkeys</a>
这是个具有3个参数的函数:一个代表交叉的姓名,第一个数组,及第二个数组。这也很容易发现爱猫的网猴名爱猫的网猴。
看一下源码:
<a href="#" onClick="arrayIntersect('monkeys
who love
cats',monkeys,kittyphile);">cat-loving monkeys</a>
让我们看看arrayIntersect函数本身:
function arrayIntersect(intersect_name, array_1,
array_2)
{
var the_list = "";
for (loop_1 = 0; loop_1 < array_1.length; loop_1++)
{
for (loop_2 = 0; loop_2 < array_2.length; loop_2++)
{
if (array_1[loop_1] == array_2[loop_2])
{
the_list = the_list + array_1[loop_1] + " ";
}
}
}
alert("the " + intersect_name + " are: "+
the_list);
}
看看你是否已经弄懂本例中的循环。关键是函数第一行:
function arrayIntersect(intersect_name, array_1,
array_2)
这里定义了一个叫arrayIntersect的函数,它有3个参数。就象上例,每个参数就象一个变量,当函数调用时赋值。因此,当函数被调用时:
arrayIntersect('dancing monkeys',monkeys,discophile);
下列分配:
- intersect_name = 'dancing monkeys'
- array_1 = monkeys
- array_2 = discophile
唯一需注意的是,你必须以正确的参数数目来调用函数。如果你一旦象这样调用arrayIntersect:
arrayIntersect(monkeys,discophile);
将会出错。试一下看会发生什么错误。
在任一标准的Javascript程序中,函数都是基本的部件。因此理解其工作原理极其重要。这里是一个测试你对这项工作理解多少的练习。再综合地做一下本课中其它练习,再在你自己的浏览器中应用。
JavaScript教程
第一页 第四课介绍
第二页 循环介绍
第三页 循环的密码
第四页 再谈WHILE循环
第五页 For循环
第六页 嵌套循环
第七页 循环练习
第八页 数组
第九页 数组和循环
第十页 文件目标模块中的数组
第十一页 函数
第十二页 无参数函数
第十三页 参数及返回值
第十四页 多于一个参数的函数
|