artdaq_node_server  v1_00_09
 All Classes Namespaces Files Variables Pages
_baseIteratee.js
1 var baseMatches = require('./_baseMatches'),
2  baseMatchesProperty = require('./_baseMatchesProperty'),
3  identity = require('./identity'),
4  isArray = require('./isArray'),
5  property = require('./property');
6 
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') {
18  return value;
19  }
20  if (value == null) {
21  return identity;
22  }
23  if (typeof value == 'object') {
24  return isArray(value)
25  ? baseMatchesProperty(value[0], value[1])
26  : baseMatches(value);
27  }
28  return property(value);
29 }
30 
31 module.exports = baseIteratee;