WEB开发网
开发学院网页设计JavaScript 对javascript匿名函数的理解(透彻版) 阅读

对javascript匿名函数的理解(透彻版)

 2010-02-03 00:00:00 来源:WEB开发网   
核心提示: 下面,我们先初步了解一下和匿名函数相关的概念,对javascript匿名函数的理解(透彻版)(2),函数声明(function 语句)要使用一个函数,我们就得首先声明它的存在,例如,我们把上面的例子中,而我们最常用的方式就是使用function语句来定义一个函数,如:functionabc(){

下面,我们先初步了解一下和匿名函数相关的概念。

函数声明(function 语句)

要使用一个函数,我们就得首先声明它的存在。而我们最常用的方式就是使用function语句来定义一个函数,如:

function abc(){  
  // code to process  
}  

当然,你的函数也可以是带参数的,甚至是带返回值的。

function abc(x,y){  
  return x+y;  
}  

但是,无论你怎么去定义你的函数,JS解释器都会把它翻译成一个Function对象。例如,你在定义上面的其中一个例子的函数号,再输入如下代码:

alert(typeof abc);// "function"  

你的浏览器就会弹出提示框,提示你abc是一个Function对象。那么Function对象究竟是什么呢?

Function 对象

Function对象是JavaScript里面的固有对象,所有的函数实际上都是一个Function对象。关于这个方面的讨论,我们留到下一个专题节。我们先看看,Function对象能不能直接运用构造函数创建一个新的函数呢?答案是肯定的。例如:

var abc = new Function("x","y","return x*y;");  
alert(abc(2,3)); // "6"  

相信大家现在对如何声明一个函数应该是有所了解了。那么什么才是匿名函数呢?

声明匿名函数

顾名思义,匿名函数就是没有实际名字的函数。例如,我们把上面的例子中,函数的名字去掉,再判断一下他是不是一个函数:

alert(typeof function(){});// "function"  
alert(typeof function(x,y){return x+y;});// "function"  
alert(typeof new Function("x","y","return x*y;"))// "function"  

上一页  1 2 3 4  下一页

Tags:javascript 匿名 函数

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接