new Function()这种写法是不是很少用?

迈克雷(MichaelRay) 2010-02-03 07:42:18
最近对new比较感兴趣,不管在js中还是在AS中都遇到了。

var xy = function(){}//这种可以
var xy = new Function();//这种不行
xy.prototype.hehe=1
var xz =new xy()
trace(xz.hehe)


var xy=function(){}//可以返回1
var xy:Function = new Function;返回undfiend

new Function是不是很少用到这种写法?
...全文
147 5 打赏 收藏 举报
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zzzaquarius 2010-02-03
  • 打赏
  • 举报
回复
很少用 也不好用
字面量那么强大 有什么理由费事用这个呢。。。。

但是偶尔也有些情况只能用它

比如只能动态定义函数体的时候
让用户根据需要定义函数 不过这种情况本身也很少有的
Alien 2010-02-03
  • 打赏
  • 举报
回复
这样这样这样
[Quote=引用 1 楼 jiewenxu 的回复:]
new Function 的确很少有,而且是不推荐用的。new Function生成的是一个对象。不是函数。这个要注意

new Function 一般是这么用的, var a = new Function("a","alert(a)");
一般前面几个是参数,最后一个是函数体。要注意的是函数体是必选项,参数是可选项。所以你直接new Function是不能用来声明匿名函数的
[/Quote]
doyouall 2010-02-03
  • 打赏
  • 举报
回复
这个不知道
草根醉秋意 2010-02-03
  • 打赏
  • 举报
回复
先去找一个基本语法的书看一下

function f1(a,b){
return a+b;
}

var f2 = function(a,b){
return a+b;
}

var f3 = new Function("a,b","return a+b");

alert(f1(1,2));
alert(f2(3,4));
alert(f3(5,6));
jiewenxu 2010-02-03
  • 打赏
  • 举报
回复
new Function 的确很少有,而且是不推荐用的。new Function生成的是一个对象。不是函数。这个要注意

new Function 一般是这么用的, var a = new Function("a","alert(a)");
一般前面几个是参数,最后一个是函数体。要注意的是函数体是必选项,参数是可选项。所以你直接new Function是不能用来声明匿名函数的
相关推荐
发帖
JavaScript

8.7w+

社区成员

Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
帖子事件
创建了帖子
2010-02-03 07:42
社区公告
暂无公告