文章结束给大家来个程序员笑话:[M]
定义函数的方法重要包含3种:function 语句、函数直接量、Function()构造函数(代码格式比较如下)
//应用function语句编织函数 function f(x){ return x; } //应用函数直接量直接生成函数 var f = function(x){ return x; } //应用Function()构造函数克隆函数 var f = new Function("x","return x;");
现在比较前两种定义函数方法的区别:
方法1 是典型的函数声明
方法2 是函数表达式
其重要区别在于:
1、函数声明需表现的指定函数名,这里是f 函数表达式则应用匿名函数
2、方法1在代码执行之前(解释器)被加载到作用域中,方法2则需在代码执行时(运行期)加载
下面一个例子说明他们的区别
alert(f1); //f1源码 alert(f2); //undefined function f1(){ var i = 10; } var f2 = function(){ var j = 10; } //如果放在函数声明之后 alert(f1); //f1源码 alert(f2); //f2源码
可以看到,第一次弹出的是f1源码,第二次倒是undefined。即采取方法1定义函数,可以在该函数代码之上应用它,采取方法2定义函数则不能在其定义前应用,只能在其定义后应用。
文章结束给大家分享下程序员的一些笑话语录:
Borland说我很有前途,Sun笑了;Sun说我很有钱,IBM笑了;IBM说我很专业,Sybase笑了;Sybase说我数据库很牛,Oracle笑了;Oracle说我是开放的,Linux笑了;Linux说我要打败Unix,微软笑了;微软说我的系统很稳定,我们都笑了。
---------------------------------
原创文章 By
function和方法
---------------------------------