1 var baseMatches = require('./_baseMatches'),
2 baseMatchesProperty = require('./_baseMatchesProperty'),
3 identity = require('./identity'),
4 isArray = require('./isArray'),
5 property = require('./property');
8 * The base implementation of `_.iteratee`.
11 * @param {*} [value=_.identity] The value to convert to an iteratee.
12 * @returns {Function} Returns the iteratee.
14 function baseIteratee(value) {
15 // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.
16 // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.
17 if (typeof value == 'function') {
23 if (typeof value == 'object') {
25 ? baseMatchesProperty(value[0], value[1])
28 return property(value);
31 module.exports = baseIteratee;