javascript函数命名的三种方式及区别介绍

javascript函数命名的三种方式及区别介绍

第一

代码如下:

function fn(val1,val2) {

alert(val1+val2);

}

fn(1,2);

第二

代码如下:

var fn=function() {

alert(val1+val2);

}

fn(1,2);

第三

代码如下:

var fn=new Function("alert(val1+val2)");

fn(1,2);

 上面三种方式逻辑上是等价的,但是还是有点小区别:区别一:例一中的函数会在代码执行以前被加载到作用域中,而例二则是在代码执行到那一行的时候才会有定义;区别二:函数声明会给函数指定一个名字,而函数表达式则是创建一个匿名函数,然后将这个匿名函数赋给一个变量;区别三:例三使用Function()构造 函数克隆函数,一般很少用,因为一个函数通常有多条语句组成,如果将他们以字符串的形式作为参数传递,难免会使得代码的可读性很差。

fn

相关推荐