函数(方法)
为完成某一功能的代码。
自定义函数
function 函数名(参数列表)
{
//代码
return 值
}
调用函数:函数名(……);
其他页面调用 src=“URL”
<script language="JavaScript" src="test1.js"></script>
常用的系统函数
全局函数
eval()函数
计算JavaScript字符串,把它当做脚本语言来运行
<script language="JavaScript" type="text/javascript">
var a="window.alert('hello')";
eval(a);
</script>
isFinite(); //判断是否为有穷大
isNaN(); //判断是否为数字
parseFloat(); //解析一个字符串并返回一个浮点数
parseInt(); //解析一个字符串并返回一个整数
escape()可以对字符串进行编码,使得可以在所有计算机上都可以读取它
unescape() 转码
<script language="JavaScript" type="text/javascript">
var a="小明";
var b=escape(a);
window.alert(b);
</script>
“小明”的编码如下
unescape和escape结合使用,这样可以有效的防止中文乱码
对象函数
……
函数的几种调用方式
- 传统方式,函数名调用
- 变量=函数名(sc是一个函数)
<script language="JavaScript" src="test1.js"></script>
<script language="JavaScript" type="text/javascript">
var a=sc;
a();
关于接收函数返回值问题:
如果函数没有返回值,当你接收函数时,返回得就是undefined
如果函数有返回值,那就是返回值
test1.文件
function sc( b) {
window.alert(b);
}
<script language="JavaScript" src="test1.js"></script>
<script language="JavaScript" type="text/javascript">
var a=sc(5);
window.alert(a);
</script>
第一个值是5,第二个值是undefined
function sc( b) {
window.alert(b);
return 100;
}
<script language="JavaScript" src="test1.js"></script>
<script language="JavaScript" type="text/javascript">
var a=sc(5);
window.alert(a);
</script>
第一个值是5,第二个值是100
递归:
<script language="JavaScript" type="text/javascript">
function f(num1) {
if(num1>3){
f(--num1);
}
document.writeln(num1);
}
f(5);
结果是 3 3 4
函数的深入使用:
- 函数的参数列表可以是多个
- 并且数据类型是任意的类型
- js支持参数个数可变的函数
- js支持创建动态函数
<script language="JavaScript" type="text/javascript">
function f(){
window.alert(arguments.length); //任意个参数
}
f(1,2,3); //传入三个参数
f(4,5); //传入两个参
f(1,"hello"); //字符串数字都可以
创建动态函数略。