`
tntxia
  • 浏览: 1486913 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

对于Javascript 中函数的详细简介(一)

阅读更多

在Javascript中定义函数的方法有好几种。

1. 常见的方法:用下面的形式声明一个函数

functionName([parameters]){functionBody};
例如:
js 代码
  1. function (a,b){   
  2.     alert(a+b);   
  3. }  

当我们定义一个函数时,函数会被编译,但不会被执行。但是这个时候我们在命名空间里面多了一个叫add的函数。

2.将一个匿名的函数赋给一个变量来定义一个函数

js 代码
  1. var add=function(a, b)    
  2. {                        
  3.   return a+b;   
  4. }                        
  5. alert(add(1,2));        // produces 3   
  6.     
  7.   

但这种方法没有限制赋给一个变量的函数一定是匿名的,你也一样可以用

js 代码
  1. var add=function theAdd(a, b)    
  2. {                        
  3.   return a+b;   
  4. }                        
  5. alert(add(1,2));           // produces 3   
  6. alert(theAdd(1,2));        // also produces 3   

 这种定义的方法,对于面向对象的Javascript编程很有用,因为你可以用把一个函数赋给一个对象的属性。例如:

js 代码
  1. var myObject=new Object();   
  2. myObject.add=function(a,b){return a+b};     
  3. // myObject now has a property/a method named "add"   
  4. // and I can use it like below   
  5. myObject.add(1, 2);   

 3.我们可以用new 操作符来声明一个函数,这种声明的方法是最不常见的,除非有一个特殊的原因需要这样做。这个形式具体如下:

varName=new Function([param1Name, param2Name,...paramNName], functionBody);

 例如:

js 代码
  1. function createMyFunction(myOperator)   
  2. {   
  3.   return new Function("a""b""return a" + myOperator + "b;");   
  4. }   
  5.   
  6. var add=createMyFunction("+");                // creates "add" function   
  7. var subtract=createMyFunction("-");           // creates "subtract" function   
  8. var multiply=createMyFunction("*");           // created "multiply" function   
  9. // test the functions   
  10. alert("result of add="+add(10,2));            // result is 12   
  11. alert("result of substract="+subtract(10,2)); // result is 8   
  12. alert("result of multiply="+multiply(10,2));  // result is 20   
  13. alert(add);   
  14.   
  15.     

 这个例子通过传入的参数的不同,生成了三个函数。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics