WEB开发网
开发学院网页设计JavaScript 深入学习JavaScript中的函数 阅读

深入学习JavaScript中的函数

 2010-09-14 13:04:29 来源:WEB开发网   
核心提示: JavaScript引入Function类型并提供new Function()这样的语法是因为函数对象添加属性和方法就必须借助于Function这个类型,函数的本质是一个内部对象,深入学习JavaScript中的函数(3),由JavaScript解释器决定其运行方式,通过上述代码创建的函数

JavaScript引入Function类型并提供new Function()这样的语法是因为函数对象添加属性和方法就必须借助于Function这个类型。

函数的本质是一个内部对象,由JavaScript解释器决定其运行方式。通过上述代码创建的函数,在程序中可以使用函数名进行调用。本节开头列出的函数定义问题也得到了解释。注意可直接在函数声明后面加上括号就表示创建完成后立即进行函数调用,例如:

var i=function (a,b){
    return a+b;
}(1,2);
alert(i);

这段代码会显示变量i的值等于3。i是表示返回的值,而不是创建的函数,因为括号“(”比等号“=”有更高的优先级。这样的代码可能并不常用,但当用户想在很长的代码段中进行模块化设计或者想避免命名冲突,这是一个不错的解决办法。

需要注意的是,尽管下面两种创建函数的方法是等价的:

function funcName(){
    //函数体
}
//等价于
var funcName=function(){
    //函数体
}

但前面一种方式创建的是有名函数,而后面是创建了一个无名函数,只是让一个变量指向了这个无名函数。在使用上仅有一点区别,就是:对于有名函数,它可以出现在调用之后再定义;而对于无名函数,它必须是在调用之前就已经定义。例如:

<script language="JavaScript" type="text/javascript">
<!--
func();
var func=function(){
    alert(1)
}
//-->
</script>

这段语句将产生func未定义的错误,而:

<script language="JavaScript" type="text/javascript">
<!--
func();
function func(){
   alert(1)
}
//-->
</script>

上一页  1 2 3 4 5 6 7 8  下一页

Tags:深入 学习 JavaScript

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