![Java Web从入门到精通(第3版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/416/31794416/b_31794416.jpg)
3.4 函数
函数实质上就是可以作为一个逻辑单元对待的一组JavaScript代码。使用函数可以使代码更为简洁,提高重用性。在JavaScript中,大约95%的代码都包含在函数中。由此可见,函数在JavaScript中是非常重要的。
3.4.1 函数的定义
函数是由关键字function、函数名加一组参数以及置于大括号中需要执行的一段代码定义的。定义函数的基本语法如下:
![](https://epubservercos.yuewen.com/3A7F3C/17214367504799006/epubprivate/OEBPS/Images/figer962.jpg?sign=1738834096-Ku6SeMSjIeIf2OfUeZBcrAjIQTJcSmdr-0-545987558fb4702335e809ba002199c5)
参数说明:
functionName:必选项,用于指定函数名。在同一个页面中,函数名必须是唯一的,并且区分大小写。
parameter:可选项,用于指定参数列表。当使用多个参数时,参数间使用逗号进行分隔。一个函数最多可以有255个参数。
statements:必选项,是函数体,用于实现函数功能的语句。
expression:可选项,用于返回函数值。expression为任意的表达式、变量或常量。
【例3.25】 定义一个用于计算商品金额的函数account(),该函数有两个参数,用于指定单价和数量,返回值为计算后的金额。具体代码如下:
![](https://epubservercos.yuewen.com/3A7F3C/17214367504799006/epubprivate/OEBPS/Images/figer872.jpg?sign=1738834096-v8c9RklzFvJfE33F5DeSWKSsE9L0BQr3-0-6f7af55684f1f78df79337687fb8b2a4)
3.4.2 函数的调用
函数的调用比较简单,如果要调用不带参数的函数,使用函数名加上括号即可;如果要调用的函数带参数,则在括号中加上需要传递的参数;如果包含多个参数,各参数间用逗号分隔。
如果函数有返回值,则可以使用赋值语句将函数值赋给一个变量。
【例3.26】 对例3.25中定义的函数account()可以通过以下代码进行调用。
account(10.6,10);
说明
在JavaScript中,由于函数名区分大小写,在调用函数时也需要注意函数名的大小写。
【例3.27】 定义一个JavaScript函数checkRealName(),用于验证输入的字符串是否为汉字。(实例位置:资源包\TM\sl\3\7)
(1)在页面中添加用于输入真实姓名的表单及表单元素。具体代码如下:
![](https://epubservercos.yuewen.com/3A7F3C/17214367504799006/epubprivate/OEBPS/Images/figer873.jpg?sign=1738834096-zwU3htJ71oOqMtnVsIntdsCyESLvzHek-0-69832ea6fa1807f5808be9dccd9c5e73)
(2)编写自定义的JavaScript函数checkRealName(),用于验证输入的真实姓名是否正确,即判断输入的内容是否为两个或两个以上的汉字。checkRealName()函数的具体代码如下:
![](https://epubservercos.yuewen.com/3A7F3C/17214367504799006/epubprivate/OEBPS/Images/figer874.jpg?sign=1738834096-XFZScZD8HrTpLp2sSL96ElbSavMjDdB9-0-bd8d622e4330b56281cbfe6c3564fb2a)
说明
正确的真实姓名由两个以上的汉字组成,如果输入的不是汉字,或是只输入一个汉字,都将被认为是不正确的真实姓名。
(3)在“检测”按钮的onclick事件中调用checkRealName()函数。具体代码如下:
<input name="Button" type="button" class="btn_grey" onclick="checkRealName()" value="检测">
运行程序,输入真实姓名“cdd”,单击“检测”按钮,将弹出如图3.15所示的对话框;输入真实姓名“绿草”,单击“检测”按钮,将弹出如图3.16所示的对话框。
![](https://epubservercos.yuewen.com/3A7F3C/17214367504799006/epubprivate/OEBPS/Images/figer875.jpg?sign=1738834096-F9gU5ygEvfsVCRTpPvJzRMhYoTbXG3gf-0-e881dc15d5d889fee1a0cc429d081bae)
图3.15 输入的真实姓名不正确
![](https://epubservercos.yuewen.com/3A7F3C/17214367504799006/epubprivate/OEBPS/Images/figer876.jpg?sign=1738834096-MIWksRBSplmVUmQbCXWluQVPLvxbDegp-0-026fcd67d511af28422e7e8eba391bd2)
图3.16 输入的真实姓名正确