00001 var isPrototype = require('./_isPrototype'), 00002 nativeKeys = require('./_nativeKeys'); 00003 00005 var objectProto = Object.prototype; 00006 00008 var hasOwnProperty = objectProto.hasOwnProperty; 00009 00017 function baseKeys(object) { 00018 if (!isPrototype(object)) { 00019 return nativeKeys(object); 00020 } 00021 var result = []; 00022 for (var key in Object(object)) { 00023 if (hasOwnProperty.call(object, key) && key != 'constructor') { 00024 result.push(key); 00025 } 00026 } 00027 return result; 00028 } 00029 00030 module.exports = baseKeys;