chain-able
Version:
interfaces that describe their intentions.
44 lines (42 loc) • 2.62 kB
JavaScript
var isObjLoose = require('./objLoose')
var isNullOrUndef = require('./nullOrUndefined')
/**
* @param {*} x value
* @return {boolean} isObjStrict
*
* @since 3.0.0
* @memberOf is
* @func isObjStrict
* @see is/obj
* @see is/objWithKeys
* @see is/objLoose
* @see is/null
* @see https://github.com/sindresorhus/is-obj/blob/master/index.js
* @TODO !Array.isArray
*
* @extends isObjLoose
* @variation null will not count as an object
*
* @example
*
* isObjStrict(new Object())
* //=> true
* isObjStrict({})
* //=> true
* isObjStrict(Object.create(null))
* //=> true
* isObjStrict(null)
* //=> false
*
* isObjStrict(new Set())
* //=> false
* isObjStrict(function() {})
* //=> false
* isObjStrict('')
* //=> false
* isObjStrict(1)
* //=> false
*
*/
module.exports = function (x) { return !isNullOrUndef(x) && isObjLoose(x); }
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqU3RyaWN0LmpzIiwic291cmNlcyI6WyJvYmpTdHJpY3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgaXNPYmpMb29zZSA9IHJlcXVpcmUoJy4vb2JqTG9vc2UnKVxuY29uc3QgaXNOdWxsT3JVbmRlZiA9IHJlcXVpcmUoJy4vbnVsbE9yVW5kZWZpbmVkJylcblxuLyoqXG4gKiBAcGFyYW0gIHsqfSB4IHZhbHVlXG4gKiBAcmV0dXJuIHtib29sZWFufSBpc09ialN0cmljdFxuICpcbiAqIEBzaW5jZSAzLjAuMFxuICogQG1lbWJlck9mIGlzXG4gKiBAZnVuYyBpc09ialN0cmljdFxuICogQHNlZSBpcy9vYmpcbiAqIEBzZWUgaXMvb2JqV2l0aEtleXNcbiAqIEBzZWUgaXMvb2JqTG9vc2VcbiAqIEBzZWUgaXMvbnVsbFxuICogQHNlZSBodHRwczovL2dpdGh1Yi5jb20vc2luZHJlc29yaHVzL2lzLW9iai9ibG9iL21hc3Rlci9pbmRleC5qc1xuICogQFRPRE8gIUFycmF5LmlzQXJyYXlcbiAqXG4gKiBAZXh0ZW5kcyBpc09iakxvb3NlXG4gKiBAdmFyaWF0aW9uIG51bGwgd2lsbCBub3QgY291bnQgYXMgYW4gb2JqZWN0XG4gKlxuICogQGV4YW1wbGVcbiAqXG4gKiAgaXNPYmpTdHJpY3QobmV3IE9iamVjdCgpKVxuICogIC8vPT4gdHJ1ZVxuICogIGlzT2JqU3RyaWN0KHt9KVxuICogIC8vPT4gdHJ1ZVxuICogIGlzT2JqU3RyaWN0KE9iamVjdC5jcmVhdGUobnVsbCkpXG4gKiAgLy89PiB0cnVlXG4gKiAgaXNPYmpTdHJpY3QobnVsbClcbiAqICAvLz0+IGZhbHNlXG4gKlxuICogIGlzT2JqU3RyaWN0KG5ldyBTZXQoKSlcbiAqICAvLz0+IGZhbHNlXG4gKiAgaXNPYmpTdHJpY3QoZnVuY3Rpb24oKSB7fSlcbiAqICAvLz0+IGZhbHNlXG4gKiAgaXNPYmpTdHJpY3QoJycpXG4gKiAgLy89PiBmYWxzZVxuICogIGlzT2JqU3RyaWN0KDEpXG4gKiAgLy89PiBmYWxzZVxuICpcbiAqL1xubW9kdWxlLmV4cG9ydHMgPSB4ID0+ICFpc051bGxPclVuZGVmKHgpICYmIGlzT2JqTG9vc2UoeClcbiJdLCJuYW1lcyI6WyJjb25zdCJdLCJtYXBwaW5ncyI6IkFBQUFBLEdBQUssQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQztBQUN4Q0EsR0FBSyxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUMsbUJBQW1CLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUF3Q2xELE1BQU0sQ0FBQyxPQUFPLEdBQUcsVUFBQSxDQUFDLENBQUEsQ0FBQyxBQUFHLFNBQUEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFBOyJ9