_enum-keys.js 472 B

123456789101112131415
  1. // all enumerable object keys, includes symbols
  2. var getKeys = require('./_object-keys')
  3. , gOPS = require('./_object-gops')
  4. , pIE = require('./_object-pie');
  5. module.exports = function(it){
  6. var result = getKeys(it)
  7. , getSymbols = gOPS.f;
  8. if(getSymbols){
  9. var symbols = getSymbols(it)
  10. , isEnum = pIE.f
  11. , i = 0
  12. , key;
  13. while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))result.push(key);
  14. } return result;
  15. };