【发布时间】:2014-05-29 08:44:10
【问题描述】:
我想在 node.js 中创建一个函数,它接受一个整数值并使用 lodash/underscore 的 _.partial/_.partialRight 将其转换为二进制字符串。
var _ = require('lodash');
var n = 123456789;
console.log(n.toString(2)); // works
console.log(Number.prototype.toString.call(n, 2)); // works
var toBin = _.partialRight(Number.prototype.toString.call, 2);
console.log(toBin(n)); // broken
console.log(toBin); // --> [Function: bound]
最后一个损坏的实现产生:
/media/data/Dropbox/game-of-spell/node_modules/lodash/dist/lodash.js:957
return func.apply(thisBinding, args);
^
TypeError: object is not a function
是否可以偏分.call 或.apply?如果不是,为什么?
【问题讨论】:
标签: javascript node.js functional-programming lodash