建站学 - 轻松建站从此开始!

建站学-个人建站指南,网页制作,网站设计,网站制作教程

javascript定义函数的方法

时间:2010-12-06 23:35来源: 作者: 点击:
javscript中定义和声明函数有三种方式:正常方法 构造函数 函数直接量。
javscript中定义和声明函数有三种方式:正常方法 构造函数 函数直接量。
以下是各种方法的示例代码

<html>
<head></head>
<body>
<script type="text/javascript">
/*javascript定义函数(声明函数)可以有三种方法:正常方法、构造函数、函数直接量。*/
/*1.正常方法 function(param){}*/
function print(msg)
{
document.write(msg,"<br/>");
}
/*如果函数不包含return 语句,只执行函数体内语句,并返回undefined*/
/*2.构造函数方法:new Function()*/
var add1=new Function('a','b','return a+b');
/*3.函数直接量法,创建未命名函数,*/
var result = function(x,y){return x+y;};
/*也可以指定函数名*/
var result2 = function fact(x){if(x<1) return 1;else return x*fact(x-1)};
document.write('调用一般的方法:');
print("<hr/>");
print('调用构造函数方法:add1(5,6)');
print(add1(5,6));
print("<hr/>");
print("调用函数直接量法:result(3,4)");
var re =result(3,4);
print(re);
print("调用函数直接量法:result2(3)");
print(result2(3));
print("<hr/>");
print('函数作为数据使用');
/*函数可以作为数据使用*/
function add(x,y){return x+y;}
function subtract(x,y){return x-y;}
function multiply(x,y){return x*y;}
function divide(x,y){return x/y;}
function operate(operator,operand1,operand2)
{
return operator(operand1,operand2);
}
//计算(2+3) + (4*5)
var i = operate(add,operate(add,2,3),operate(multiply,4,5));
print('(2+3) + (4*5)='+i);
print("<hr/>");
//使用函数直接量
var operators = new Object();
operators['add'] = function(x,y){return x+y;}
operators['substract'] = function(x,y){return x-y;}
operators['multiply'] = function(x,y){return x*y;}
operators['divide'] = function(x,y){return x/y;}
operators['pow'] = Math.pow;
function operate2(op_name,operand1,operand2)
{
if(operators[op_name] == null) return "unknown operator";
else return operators[op_name](operand1,operand2);
}
//定义"hello" + "" + "world"
var j = operate2("add","hello",operate2("add"," ","world"));
var k = operate2("pow",10,2);
print(j);
print(k);
print("<hr/>");
</script>
</body>
</html>

运行结果为:
调用一般的方法:
--------------------------------------------------------------------------------
调用构造函数方法:add1(5,6)
11
--------------------------------------------------------------------------------
调用函数直接量法:result(3,4)
7
调用函数直接量法:result2(3)
6
--------------------------------------------------------------------------------
函数作为数据使用
(2+3) + (4*5)=25
--------------------------------------------------------------------------------
hello world
100
(责任编辑:admin)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片