Skip to main content
Stack Overflow
  1. About
  2. For Teams

Return to Answer

Used a more direct cross reference (as user names can change at any time).
Source Link
Peter Mortensen
  • 31.3k
  • 22
  • 110
  • 134

For setting the name of an existing anonymous function:
(Basedbased on @Marcosc's answerMarcosc's answer):

var anonymous = function() { return true; }
var name = 'someName';
var strFn = anonymous.toString().replace('function ', 'return function ' + name);
var fn = new Function(strFn)();
console.log(fn()); // —> true

Demo.

Note: Don't do it ;/

For setting the name of an existing anonymous function:
(Based on @Marcosc's answer)

var anonymous = function() { return true; }
var name = 'someName';
var strFn = anonymous.toString().replace('function ', 'return function ' + name);
var fn = new Function(strFn)();
console.log(fn()); // —> true

Demo.

Note: Don't do it ;/

For setting the name of an existing anonymous function(based on Marcosc's answer):

var anonymous = function() { return true; }
var name = 'someName';
var strFn = anonymous.toString().replace('function ', 'return function ' + name);
var fn = new Function(strFn)();
console.log(fn()); // —> true

Demo.

Note: Don't do it ;/

added 28 characters in body
Source Link
Onur Yıldırım
  • 33.9k
  • 14
  • 86
  • 99

For setting the name of an existing anonymous function:
(Based on @Marcosc's answer)

var anonymous = function() { return true; }
var name = 'someName';
var strFn = anonymous.toString().replace('function ', 'return function ' + name);
var fn = new Function(strFn)();
console.log(fn()); // —> true

Demo.

Note: Don't do it ;/

For setting the name of an existing anonymous function:
(Based on @Marcosc's answer)

var anonymous = function() { return true; }
var name = 'someName';
var strFn = anonymous.toString().replace('function ', 'return function ' + name);
var fn = new Function(strFn)();
console.log(fn()); // —> true

Demo.

For setting the name of an existing anonymous function:
(Based on @Marcosc's answer)

var anonymous = function() { return true; }
var name = 'someName';
var strFn = anonymous.toString().replace('function ', 'return function ' + name);
var fn = new Function(strFn)();
console.log(fn()); // —> true

Demo.

Note: Don't do it ;/

added 37 characters in body
Source Link
Onur Yıldırım
  • 33.9k
  • 14
  • 86
  • 99

For setting the name of an existing anonymous function:
(Based on @Marcosc's answer)

var anonymous = function() { return true; }
var name = 'someName';
var strFn = anonymous.toString().replace('function ', 'return function ' + name);
var fn = new Function(strFn)();
console.log(fn()); // —> true

Demo.

For setting the name of an existing anonymous function:
(Based on @Marcosc's answer)

var anonymous = function() { return true; }
var name = 'someName';
var strFn = anonymous.toString().replace('function ', 'return function ' + name);
var fn = new Function(strFn)();

Demo.

For setting the name of an existing anonymous function:
(Based on @Marcosc's answer)

var anonymous = function() { return true; }
var name = 'someName';
var strFn = anonymous.toString().replace('function ', 'return function ' + name);
var fn = new Function(strFn)();
console.log(fn()); // —> true

Demo.

Source Link
Onur Yıldırım
  • 33.9k
  • 14
  • 86
  • 99
Loading
lang-js

AltStyle によって変換されたページ (->オリジナル) /