index.js 460 B

123456789101112131415161718
  1. module.exports = isFunction
  2. var toString = Object.prototype.toString
  3. function isFunction (fn) {
  4. if (!fn) {
  5. return false
  6. }
  7. var string = toString.call(fn)
  8. return string === '[object Function]' ||
  9. (typeof fn === 'function' && string !== '[object RegExp]') ||
  10. (typeof window !== 'undefined' &&
  11. // IE8 and below
  12. (fn === window.setTimeout ||
  13. fn === window.alert ||
  14. fn === window.confirm ||
  15. fn === window.prompt))
  16. };