Function是一个构造器,function是Function实例化的一个对象,包含[[call]][[code]]等等属性,可以被执行。
具体使用方法:
function callAnotherFunc(fnFunction, vArgument) {
fnFunction(vArgument)
}
var doAdd = new Function("iNum", "alert(iNum + 10)")
callAnotherFunc(doAdd, 10)//输出 "20"
定义普通函数就用function:
var func = function(arg0, arg1, ... argN) { statements }//函数直接量
document.body.onload=function(xxx)document.body.onload=new
function(xxx)
document.body.onload=function(){xxxxxxxxx}
首先第一种:
楼主不要写成function(xxx),否则大家都以为是function关键字,其实只是个自定义的函数。
至于下面这种写法效果是一样的,但是注意了这里有new关键字,而且不是function,而是Function,比如说:
document.onmouseup=new
Function("flag=true")
第三种即最常见的一种,语法为:
function(){statement}
-----------------------------------
一.
var
foo01
=
function()
{
var
temp
=
100
this.temp
=
200
return
temp
+
this.temp
}
这里重载了foo01函数,效果和function
foo01(){statement}差不多,但是区别在于var
foo01=function(){statement}重装了foo01函数,也就相当于个模型,区别还是有的,比如说有个函数分别调用了这两种方式写的函数foo01,但是例子中的写法将foo01的方法继承了,但是function
foo01(){}这种写法则直接执行了函数,所以两个写法都很有用处。
二.
var
foo02
=
new
function()
{
var
temp
=
100
this.temp
=
200
return
temp
+
this.temp
}
这种写法不常见,但是它和例一差不多,只不过多了关键字new,很明显该函数必须先定义自定义函数的模型,然后才能对此函数用new关键字来实例化。
三.
var
foo3
=
new
Function(’var
temp
=
100
this.temp
=
200
return
temp
+
this.temp’)
在上面已经提及过了。
function ['fʌŋkʃən] \x0d\x0an. \x0d\x0a官能,机能 \x0d\x0a功能,作用;目的,用途 \x0d\x0a职责,职业,工作 \x0d\x0a典礼,盛大的集会(或宴会、宗教仪式) \x0d\x0a依赖别事物的事物,随别事物而变化的事物,应变量 \x0d\x0a【语言学】职能;功能 \x0d\x0a【数学】函数[亦称作 correspondence,map,mapping,transformation,multiple-value function] \x0d\x0a【化学】(化合物)特性 \x0d\x0avi. \x0d\x0a(器官等)活动;(机器等)运行;(有效地)起作用,发挥机能: \x0d\x0aThe machine doesn't function.\x0d\x0a\x0d\x0a那机器不能运行了。\x0d\x0a有作用,用以;当;行使职责;为?尽职;担任工作(常与 as连用): \x0d\x0aMary functioned as teacher.\x0d\x0a\x0d\x0a玛丽担任教师的职务。\x0d\x0a近义词: capacity , duty , office