foop
Version:
interfaces that describe their intentions.
26 lines (24 loc) • 1.61 kB
JavaScript
var isArray = require('../is/array')
/**
* @desc make a new empty Array or Object for cloning
* @memberOf dopemerge
* @name emptyTarget
* @since 2.0.0
* @func
*
* @param {*} val array or object to return an empty one of
* @return {Object | Array} depending on the data type of val
*
* @example
*
* emptyTarget({eh: true})
* //=> {}
*
* emptyTarget([1])
* //=> []
*
*/
module.exports = function emptyTarget(val) {
return isArray(val) ? [] : {}
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHlUYXJnZXQuanMiLCJzb3VyY2VzIjpbImVtcHR5VGFyZ2V0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGlzQXJyYXkgPSByZXF1aXJlKCcuLi9pcy9hcnJheScpXG5cbi8qKlxuICogQGRlc2MgbWFrZSBhIG5ldyBlbXB0eSBBcnJheSBvciBPYmplY3QgZm9yIGNsb25pbmdcbiAqIEBtZW1iZXJPZiBkb3BlbWVyZ2VcbiAqIEBuYW1lIGVtcHR5VGFyZ2V0XG4gKiBAc2luY2UgMi4wLjBcbiAqIEBmdW5jXG4gKlxuICogQHBhcmFtIHsqfSB2YWwgYXJyYXkgb3Igb2JqZWN0IHRvIHJldHVybiBhbiBlbXB0eSBvbmUgb2ZcbiAqIEByZXR1cm4ge09iamVjdCB8IEFycmF5fSBkZXBlbmRpbmcgb24gdGhlIGRhdGEgdHlwZSBvZiB2YWxcbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqICAgIGVtcHR5VGFyZ2V0KHtlaDogdHJ1ZX0pXG4gKiAgICAvLz0+IHt9XG4gKlxuICogICAgZW1wdHlUYXJnZXQoWzFdKVxuICogICAgLy89PiBbXVxuICpcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBlbXB0eVRhcmdldCh2YWwpIHtcbiAgcmV0dXJuIGlzQXJyYXkodmFsKSA/IFtdIDoge31cbn1cbiJdLCJuYW1lcyI6WyJjb25zdCJdLCJtYXBwaW5ncyI6IkFBQUFBLEdBQUssQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBcUJ0QyxNQUFNLENBQUMsT0FBTyxHQUFHLFNBQVMsV0FBVyxDQUFDLEdBQUcsRUFBRTtFQUN6QyxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRTtDQUM5QjsifQ==