Function constructor create named function expression?
# Brendan Eich (15 years ago)
Previously: esdiscuss/2009-March/008954
# Brendan Eich (15 years ago)
On Jun 30, 2010, at 9:41 AM, Brendan Eich wrote:
Previously: esdiscuss/2009-March/008954
Sorry, a bit terse there. Please do search the mailman archive (I use Google site search: site:mail.mozilla.org Function.create -- but that lets me down sometimes), and (what's more likely to bear fruit) the wiki:
Function constructor is considered as bad practice by many JS gurus, but sometimes I use Function constructor for shorter scope chain. The problem in ES5 strict mode come when I want recursive call of function, which is created by Function constructor. I can not use
arguments.callee
and Function constructor does not provide way to create NFE. I would like to see Function constructor, which can create:For example:
var F = Function({ name : 'NFE', arguments : ['arg1', 'arg2', 'argN'], scope : {a : 10, b : 20}, body : "print(typeof NFE); print(a + b);" });
F.length; -> 3
F(); -> function -> 30