javascript如何创建可调用实例

时间:2014-03-21 19:13:47

标签: javascript node.js

我想用扩充原型创建函数实例,以避免猴子修补Function.prototype并避免将属性复制到每个函数实例。

通过继承Function原型似乎不可能。

var util = require('util');
function Fn () {}
util.inherits(Fn, Function);
var fn = new Fn('a', 'return a;');

fn.call(null, 5);
// TypeError: object is not a function

fn.apply(null, [ 5 ]);
// TypeError: Function.prototype.toString is not generic
//     at Fn.toString (native)

修改:我为什么要这样做?

尝试编写可链接的高阶函数来处理promises。

when('  promise').then(library.trim().toUpperCase())
// becomes 'PROMISE'

0 个答案:

没有答案