bind.js 406 B

123456789101112131415161718
  1. var slice = require('./slice')
  2. /**
  3. * 创建一个绑定上下文的函数
  4. *
  5. * @param {Function} callback 函数
  6. * @param {Object} context 上下文
  7. * @param {*} args 额外的参数
  8. * @return {Object}
  9. */
  10. function bind (callback, context) {
  11. var args = slice(arguments, 2)
  12. return function () {
  13. return callback.apply(context, slice(arguments).concat(args))
  14. }
  15. }
  16. module.exports = bind