http://blog.sina.com.cn/s/blog_81adceb001012n51.html
JavaScript中的Function对象是函数,函数的用途分为3类:
作为普通逻辑代码容器;
作为对象方法;
作为构造函数。
1.作为普通逻辑代码容器
function multiply(x, y) {
return x * y;
}
函数multiply封装了两位数的乘法运算公式:
var product = multiply(128, 128); // product = 16384
创建函数实例的方式有3种。第一种是声明式,即像声明变量一样,将通过function(){}标识符创建的匿名函数直接赋值给变量,以该变量作为调用时的函数名称:
var multiply = function(x, y) {
return x * y;
}
第二种是定义式,即以function关键字后跟函数名称及(){}来直接定义命名函数,前面第一个multiply函数就是通过定义式创建的。
第三种是构造函数式,即通过new运算符调用构造函数Function来创建函数。这种方式极不常用,因此就不作介绍了。
在创建函数的3种方式中,声明式和定义式还存在细微的差别。比如下列代码中的函数采用声明式:
var example = function(){
return 1;
}
example();
var example = function(){
return 2;
}
example();
执行结果如下:
1
2
而如果采用定义式,即:
function example() {
return 1;
}
example();
function example() {
return 2;
}
example();
那么会得到另一种结果:
2
2
即,在采用定义式创建同名函数时,后创建的函数会覆盖先创建的函数。这种差别是由于JavaScript解释引擎的工作机制所导致的。 JavaScript解释引擎在执行任何函数调用之前,首先会在全局作用域中注册以定义式创建的函数,然后再依次执行函数调用。由于注册函数时,后定义的函数重写了先定义的函数,因此无论调用语句位于何处,执行的都是后定义的函数。相反,对于声明式创建的函数,JavaScript解释引擎会像对待任何声明的变量一样,等到执行调用该变量的代码时才会对变量求值。由于JavaScript代码是从上到下顺序执行的,因此当执行第一个example()调用时,example函数的代码就是首先定义代码;而当执行第二个example()调用时,example函数的代码又变成了后来定义的代码。
分享到:
相关推荐
关于javascript function的一些笔记,转过来的一些笔记
理解JavascriptFunction与Object
主要介绍了JavaScript function函数种类,包括普通函数、匿名函数、闭包函数、十分的全面,并附上了示例,这里推荐给大家,希望对大家能有所帮助。
一个JavaScript Function Outliner插件 第四版本 支持内嵌javascript,且可以对javascript进行压缩
本文实例讲述了javascript function(函数类型)使用与注意事项。分享给大家供大家参考,具体如下: 在ECMAScript中,Function(函数)类型实际上是对象。每个函数都是Function类型的实例,而且都与其他引用类型一样具有...
主要为大家详细介绍了JavaScript function函数种类,包括普通函数、匿名函数、闭包函数,感兴趣的小伙伴们可以参考一下
关于javascript function对象那些迷惑分析,学习js面向对象的朋友可以参考下。
主要介绍了Javascript Function.prototype.bind详细分析的相关资料,需要的朋友可以参考下
Sometimes, when we are using the IE Browser Control inside of a C++...it is possible to make a control for the JavaScript object inside an HTML page by using a traditional COM approach. This article describes the class CWebPage that allows you to do it and a technique to call a JavaScript function from C++ code...
【KETTLE教材】JS内嵌方法: 详细介绍kettle中使用javascript时内嵌的function
Javascript function()示例和练习。 盖子: 通过创建功能 构造函数(新关键字) 功能表达 功能声明 匿名函数 功能表达 功能声明 立即调用函数表达式(IIFE) 吊装 安装 git clone ...
小编给大家带来一片关于javascript的基础教学内容,关于Function函数的训练与理解,一起学习下吧。
如: 代码如下: function func() { //body code } (3) 使用JavaScript内置Function对象构造。如: 代码如下: var func = new Function(“/*parameters*/”,”/*body code*/”); 声明变量定义与使用function表达式...
该文摘自于匿名教程总结,希望对初学js的同学有帮助,因为它解决了我学习js的众多迷惑。。。
一些javascript常见函数,方便当作学习参考
JavaScript之函数(ppt).pdf