Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
@skava/modules / ___dist / chain-able / src / deps / is / string.js
Size: Mime:
"use strict";

const toS = require("./toS");

const isStringPrimitive = require("./stringPrimitive");
/**
 * Checks if `value` is classified as a `String` primitive or object.
 *
 * @name isString
 * @since 3.0.0
 * @category Lang
 *
 * @memberOf is
 * @extends isStringPrimitive
 * @variation also allows String objects
 *
 * @param {*} x The value to check.
 * @return {boolean} Returns `true` if `value` is a string, else `false`.
 *
 * {@link https://nodejs.org/api/util.html#util_util_isstring_object node-util-isstring}
 * {@link https://github.com/jashkenas/underscore/blob/master/underscore.js#L1318 underscore-isstring}
 * {@link https://github.com/infernojs/inferno/blob/master/packages/inferno-shared/src/index.ts#L42 inferno-isstring}
 * {@link https://github.com/ramda/ramda/blob/master/src/internal/_isString.js ramda-is-string}
 * {@link https://github.com/js-data/js-data/blob/v2/src/utils.js#L57 js-data-is-string}
 * {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String mozilla-string}
 * {@link https://github.com/lodash/lodash/blob/master/isString.js lodash-isString}
 * @see {@link lodash-isString}
 * @see {@link mozilla-string}
 * @see {@link js-data-is-string}
 * @see {@link ramda-is-string}
 * @see {@link inferno-isstring}
 * @see {@link underscore-isstring}
 * @see {@link node-util-isstring}
 * @see isStringPrimitive
 *
 * @example
 *
 *   isString('abc')
 *   //=> true
 *
 *   isString(new String('abc'))
 *   //=> true
 *
 *   isString(1)
 *   //=> false
 *
 */


module.exports = x => isStringPrimitive(x) || toS(x) === '[object String]';