Sha256: c49ceb080bd3998eded7882c4d99112710c100ee75a75ad54f2b88f196ed75d4

Contents?: true

Size: 1.2 KB

Versions: 153

Compression:

Stored size: 1.2 KB

Contents

var isArguments = require('./isArguments'),
    isArray = require('./isArray'),
    isArrayLike = require('../internal/isArrayLike'),
    isFunction = require('./isFunction'),
    isObjectLike = require('../internal/isObjectLike'),
    isString = require('./isString'),
    keys = require('../object/keys');

/**
 * Checks if `value` is empty. A value is considered empty unless it's an
 * `arguments` object, array, string, or jQuery-like collection with a length
 * greater than `0` or an object with own enumerable properties.
 *
 * @static
 * @memberOf _
 * @category Lang
 * @param {Array|Object|string} value The value to inspect.
 * @returns {boolean} Returns `true` if `value` is empty, else `false`.
 * @example
 *
 * _.isEmpty(null);
 * // => true
 *
 * _.isEmpty(true);
 * // => true
 *
 * _.isEmpty(1);
 * // => true
 *
 * _.isEmpty([1, 2, 3]);
 * // => false
 *
 * _.isEmpty({ 'a': 1 });
 * // => false
 */
function isEmpty(value) {
  if (value == null) {
    return true;
  }
  if (isArrayLike(value) && (isArray(value) || isString(value) || isArguments(value) ||
      (isObjectLike(value) && isFunction(value.splice)))) {
    return !value.length;
  }
  return !keys(value).length;
}

module.exports = isEmpty;

Version data entries

153 entries across 80 versions & 8 rubygems

Version Path
ilog-0.4.1 node_modules/contents/node_modules/lodash/lang/isEmpty.js
ilog-0.4.1 node_modules/babel-plugin-proto-to-assign/node_modules/lodash/lang/isEmpty.js
ilog-0.4.1 node_modules/babel/node_modules/lodash/lang/isEmpty.js
ilog-0.4.0 node_modules/babel/node_modules/lodash/lang/isEmpty.js
ilog-0.4.0 node_modules/contents/node_modules/lodash/lang/isEmpty.js
ilog-0.4.0 node_modules/babel-plugin-proto-to-assign/node_modules/lodash/lang/isEmpty.js
ilog-0.3.3 node_modules/babel/node_modules/lodash/lang/isEmpty.js
ilog-0.3.3 node_modules/contents/node_modules/lodash/lang/isEmpty.js
ilog-0.3.3 node_modules/babel-plugin-proto-to-assign/node_modules/lodash/lang/isEmpty.js
trusty-festivity-extension-2.6.3 node_modules/bower/node_modules/configstore/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isEmpty.js
trusty-festivity-extension-2.6.3 node_modules/bower/node_modules/inquirer/node_modules/lodash/lang/isEmpty.js
trusty-festivity-extension-2.6.2 node_modules/bower/node_modules/configstore/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isEmpty.js
trusty-festivity-extension-2.6.2 node_modules/bower/node_modules/inquirer/node_modules/lodash/lang/isEmpty.js
trusty-festivity-extension-2.6.1 node_modules/bower/node_modules/configstore/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isEmpty.js
trusty-festivity-extension-2.6.1 node_modules/bower/node_modules/inquirer/node_modules/lodash/lang/isEmpty.js
xcodebuild-helper-1.2.5 externals/ios-sim-master/node_modules/lodash/lang/isEmpty.js
trusty-festivity-extension-2.6 node_modules/bower/node_modules/configstore/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isEmpty.js
trusty-festivity-extension-2.6 node_modules/bower/node_modules/inquirer/node_modules/lodash/lang/isEmpty.js
trusty-festivity-extension-2.5.19 node_modules/bower/node_modules/configstore/node_modules/js-yaml/node_modules/argparse/node_modules/lodash/lang/isEmpty.js
trusty-festivity-extension-2.5.19 node_modules/bower/node_modules/inquirer/node_modules/lodash/lang/isEmpty.js