f-utility
Version:
functional utilities
35 lines (28 loc) • 907 B
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.anyLength = exports.length = exports.objectLength = exports.propLength = undefined;
var _katsuCurry = require("katsu-curry");
var _path = require("./path");
var _object = require("./object");
/**
* returns .length if it exists on an input
* @method propLength
* @param {*} whatever - some input
* @returns {number} length
* @private
*/
var propLength = exports.propLength = (0, _path.prop)("length");
/**
* returns total keys in an object
* @method objectLength
* @param {Object} object - an object
* @returns {number} length
* @private
*/
var objectLength = exports.objectLength = (0, _katsuCurry.pipe)(_object.keys, propLength);
var length = exports.length = propLength;
var anyLength = exports.anyLength = function anyLength(x) {
return typeof x === "object" ? objectLength(x) : propLength(x);
};
;