| 123456789101112131415161718192021222324252627282930313233 | var isObject = require('./isObject'),    isPrototype = require('./_isPrototype'),    nativeKeysIn = require('./_nativeKeysIn');/** Used for built-in method references. */var objectProto = Object.prototype;/** Used to check objects for own properties. */var hasOwnProperty = objectProto.hasOwnProperty;/** * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense. * * @private * @param {Object} object The object to query. * @returns {Array} Returns the array of property names. */function baseKeysIn(object) {  if (!isObject(object)) {    return nativeKeysIn(object);  }  var isProto = isPrototype(object),      result = [];  for (var key in object) {    if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {      result.push(key);    }  }  return result;}module.exports = baseKeysIn;
 |