bob体育官方平台
JavaScript中匿名函数的用法及优缺点详解_基础知识_脚本之家

定义一个函数一般有如下三种方式:

匿名函数可以有效的保证在页面上写入Javascript,而不会造成全局变量的污染。

1.函数关键字语句:

这在给一个不是很熟悉的页面增加Javascript时非常有效,也很优美。

function fnMethodName; }

一、什么是匿名函数?

2.函数字面量:

在Javascript定义一个函数一般有如下三种方式:

var fnMethodName = function;}

函数关键字语句:

3.Function()构造函数:

function fnMethodName;}

var fnMethodName = new Function

函数字面量:

上面三种方法定义了同一个方法函数fnMethodName,第1种就是最常用的方法,后两种都是把一个函数复制给变量fnMethodName,而这个函数是没有名字的,即匿名函数。实际上,相当多的语言都有匿名函数。

var fnMethodName = function;}

语句】

Function()构造函数:

 function add { return num1+num2+200; } var sum=add; window.document.write; 

var fnMethodName = new Function

【第二种-函数字面量

上面三种方法定义了同一个方法函数fnMethodName,

  var add=function { return num1+num2+200;} var sum=add; window.document.write; 

 var add=new Function("num"," return num+200");//此时Function 这种方法用的比较少 var sum=add; window.document.write;

第1种就是最常用的方法,后两种都是把一个函数复制给变量fnMethodName,而这个函数是没有名字的,即匿名函数。

以上这篇浅谈js函数的多种定义方法与区别就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

实际上,相当多的语言都有匿名函数。

二、函数字面量和Function()构造函数的区别

虽然函数字面量是一个匿名函数,但语法允许为其指定任意一个函数名,当写递归函数时可以调用它自己,使用Function()构造函数则不行。

var f = function fact return 1; else return x*fact; };

Function()构造函数允许运行时Javascript代码动态的创建和编译。在这个方式上它类似全局函数eval构造函数每次执行时都解析函数主体,并创建一个新的函数对象。所以当在一个循环或者频繁执行的函数中调用Function()构造函数的效率是非常低的。相反,函数字面量却不是每次遇到都重新编译的。

用Function()构造函数创建一个函数时并不遵循典型的作用域,它一直把它当作是顶级函数来执行。

var y = "global";

上一篇:没有了 下一篇:没有了
返回顶部