我使用了JavaScript的new
运算符,匿名函数,并将函数用作一等公民(即将函数作为参数传递,使用函数作为返回值等)。然后我想到做这些奇怪的组合。
function foo(s) {
return function () {
alert(s);
}
}
var bar = foo('bar');
var baz = new foo('baz');
bar();
baz();
两个来电bar()
和baz()
的行为相似(即分别提醒'bar'
和'baz'
。
当variable = func()
返回匿名函数时,variable = new func()
与func()
之间确实存在差异吗?