isEmpty.js 670 B

123456789101112131415161718192021222324
  1. var forOwn = require('../object/forOwn');
  2. var isArray = require('./isArray');
  3. function isEmpty(val){
  4. if (val == null) {
  5. // typeof null == 'object' so we check it first
  6. return false;
  7. } else if ( typeof val === 'string' || isArray(val) ) {
  8. return !val.length;
  9. } else if ( typeof val === 'object' || typeof val === 'function' ) {
  10. var result = true;
  11. forOwn(val, function(){
  12. result = false;
  13. return false; // break loop
  14. });
  15. return result;
  16. } else {
  17. return false;
  18. }
  19. }
  20. module.exports = isEmpty;