- 函数是完成特定任务的语句块,当需要重复完成某种任务时,就应该把用到的语句组织成函数。这样在JavaScript程序的任意位置都可以通过引用其名称来执行任务。程序员可以在程序中建立很多函数,这样有利于组织自己的程序结构,使代码的维护更容易。
1、函数定义注意事项:
(1) 函数名区分大小写,且不能相同,更不能使用JavaScript的关键字。
(2)在function关键字之前不能指定返回值的数据类型。
(3)函数定义中[ ]是指可选的,也就是说,自定义的函数可以带参数,也可以不带参数。如果有参数,参数可以是变量、常量或表达式。自定义函数可以有返回值,也可以没有,如果省略了return 语句,则函数返回undefined.
(4)函数必须放在<script> </script>标签之间。
(5)函数的定义最好放在网页的<head> </head> 部分。
(6)定义函数时并不执行组成该函数的代码,只有调用函数时才执行代码。
2、自定义函数使用function关键字。
语法:
function 函数名([参数列表]){
程序语句
[retuen 返回值;]
}
无参数无返回值函数定义:
语法:
function 函数名(){
程序语句
}
示例:
function hallo(){
alert("你好!")
}
有参数有返回值函数定义:
语法:
function 函数名(参数列表){
程序语句
return 返回值;
}
示例:定义一个函数,请根据输入的员工工龄计算出该员工的工龄工资是多少并返回(工龄1年,则100元。工龄2年,则200元。根据工龄的不断增长,工龄工资也依次增长。)
<script type="text/javascript">
//定义一个有参函数
function test1(year) {
//程序语句
var money = 0
for (var i = 1; i <= year; i++) {
money += 100
}
//弹出工龄工资
alert("您的工龄工资是" + money + "元")
}
//输入参数的值
var year = parseInt(prompt("请输入工龄"))
//调用函数
test1(year)
</script>
3、全局变量与局部变量
根据变量的作用范围,变量可分为全局变量和局部变量。
●全局变量是指在<scripD></scrip>标签中声明的变量, 独立于所有函数之外,作用范围是该变量声明后的所有语句,包括在其后定义的函数中的语句。
●局部变量是在函数中声明的变量(函数的参数列表中的变量也是属于该函数的局部变量),只有在该函数中且位于该变量声明之后的程序代码才可以使用这个变量。局部变量一定是属于某 个函数,故对其后的其他函数和脚本代码来说都是不可见的(不能访问)。如果在其后的其他函数和脚本代码中声明了与这个局部变量同名的变量,则这两个变量没有任何关系。
如果在函数中声明了与全局变量同名的局部变量,则在该函数中使用的同名变量是局部变量而不是全局变量。这是程序中的同名覆盖原则,局部变量“屏蔽”了同名的全局变量。
4、内置函数
parseInt()函数
将一个字符串按照指定的进制转换为一个整数:
parseInt(numString,[radix])
numString为要进行转换的字符串,radix为要转换的进制,(可不填,默认10进制)
parseFloat()函数
将一个字符串转换为一个浮点数:
parseFloat(numString)
如果该字符串不能转换为数字则返回NaN
isNaN()函数
用于检测一个变量或一个字符串是否为数字
isNaN(is Not Number)
eval()函数
eval()函数将一个字符串作为一段JavaScript表达式执行,并返回执行的结果、
eval(express)
参数express是用字符串形式表示的JavaScript表达式,该函数将返回JavaScript解析器执行的express的结果