Return value of 'eval("function z() {...}"'?
# Mike Samuel (15 years ago)
Nothing.
From chapter 14:
The production SourceElement : FunctionDeclaration is evaluated as follows: 1. Return (normal, empty, empty).
2011/2/24 Dave Fugate <dfugate at microsoft.com>:
# Allen Wirfs-Brock (15 years ago)
And 15.1.2.1 says what eval returns if programs that evaluate to (normal,empty, emtry): undefined.
# Dave Fugate (15 years ago)
Thanks for the info guys! I was aware of 15.1.2.1, but had no idea what a FunctionDeclaration would actually evaluate to.
My best,
By ES5.1, what would we expect to be 'x' in the following snippet: x = eval("function z() {return 1;}");
'undefined', 'z', or something else entirely?