timepiece/node_modules/es5-ext/object/is-plain-function.js

12 lines
350 B
JavaScript
Raw Normal View History

2024-05-14 14:54:12 +00:00
"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));
};