关于jsnewfunction的信息
JavaScript中new function和function有什么区别
//js中只有new?Function没有new?function,或者我理解你说的new?function是指实例化一个对象
//new?Function的作用是从字符串中创建一个匿名方法,如下:
var?newFun?=?new?Function("alert(1)");
nweFun();????????//弹出1
//如果你说的new?function是实例化一个对象,那么代码如下:
function?cls(){
????this.helloWord?=?function(){
????????alert("hello?Word!");
????}
}
var?clsObj?=?new?cls();
clsObj.helloWord();????????//弹出hello?Word!
//这里的cls这个你应该要把他看成面向对象里面的类,而不是js里面的方法。
//当然本质上他就是一个方法,而且你也可以cls()这样直接调用。
//更多js面向对象的东西我就不细说了,你可以自行百度。
//直接定义个function,然后调用,代码如下:
function?fun(){
????alert("hello?Word!");
}
fun();????????????//弹出hello?Word!
//这里的方法你应该看成面向对象里面的静态方法,而不是面向对象里面的类。
//当然他也确实是一个类,你也可以new?fun()来调用。
//但是new?fun()得到的对象没有任何方法。
js里Function 与 function 一样吗,基本类型区别大小写吗
js里Function 与 function的不一样的,不仅仅是大小写的问题。
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 };//函数直接量
JS里的function与new function
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;’);
在上面已经提及过了。
js中new Function 创建函数对象
Function这个构造函数可以用来创造函数对象。
0.一个参数都不传的情况 创建的就是一个空的函数
var 函数名 = new Function()
1.只传一个参数的情况 这个参数就是函数体
var 函数名 = new Function("函数体")
2.传多个参数的情况,最后一个参数为函数体,前面的参数都是该函数的形参名
请教一下,js 的new function 是如何运行的
执行 a()时,进入了函数就是继续执行b(function(){alert(123)}).
b函数执行的就是new 了一下他的参数。
他的参数是一个函数。new的时候执行了alert(123).
就是这样而已。