Blame view

node_modules/es5-ext/object/is-plain-function.js 350 Bytes
aaac7fed   liuqimichale   add
1
2
3
4
5
6
7
8
9
10
11
  "use strict";
  
  var isClassStr = RegExp.prototype.test.bind(/^\s*class[\s{/}]/)
    , fnToString = Function.prototype.toString;
  
  module.exports = function (fn) {
  	if (typeof fn !== "function") return false;
  	if (typeof fn.call !== "function") return false;
  	if (typeof fn.apply !== "function") return false;
  	return !isClassStr(fnToString.call(fn));
  };