uni-ticket-system/node_modules/licia/safeCb.js

16 lines
497 B
JavaScript
Raw Normal View History

2023-12-05 02:11:10 +00:00
var isFn = require('./isFn');
var isObj = require('./isObj');
var isArr = require('./isArr');
var optimizeCb = require('./optimizeCb');
var matcher = require('./matcher');
var identity = require('./identity');
var property = require('./property');
exports = function(val, ctx, argCount) {
if (val == null) return identity;
if (isFn(val)) return optimizeCb(val, ctx, argCount);
if (isObj(val) && !isArr(val)) return matcher(val);
return property(val);
};
module.exports = exports;