@typeforce/is-string
TypeScript icon, indicating that this package has built-in type declarations

1.0.1 • Public • Published

is-string

NPM NPM CDN LICENSE

Determine if a value is a string.

A value is a string if it is of primitive type string, or is an instance of reference type String.

Usage

    npm install @typeforce/is-string --save   # Install package via NPM
    import { expect } from "chai";
    import isString from "@typeforce/is-string";

    expect(isString("Boo")).to.be.true;
    expect(isString("")).to.be.true;
    expect(isString(new String("Boo"))).to.be.true;

    expect(isString(undefined)).to.be.false;
    expect(isString(null)).to.be.false;
    expect(isString(42)).to.be.false;

This package contains TypeScript type declarations. Furthermore, the package uses TypeScript type guards to allow type inference to influence IntelliSense.

    if (isString(x)) {
        // IntelliSense now knows `x` is a string.
        let y: string = x;
    }

Content Delivery Network (CDN)

This package can be imported via unpkg as demonstrated below.

    <script src="https://unpkg.com/@typeforce/is-string/dist/index.min.js"></script>
    <script type="application/javascript">
        var x = "foo";
        if (isString(x)) {
            // `x` is a string!
        }
    </script>

Build & Test

When building the project, a folder named dist/ will be created if it does not already exist, where the compiled code will be outputted to. Type declaration files will also be generated and outputted to the dist/ folder.

A minified Javascript version of the entire project will be generated and outputted to dist/index.min.js.

    npm install     # Installs dependencies.
    npm run build   # Build the project.

This package uses Gulp for building, and Chai and Mocha for testing.

    npm test       # Run tests.

License

Refer to the LICENSE file for license information.

Readme

Keywords

Package Sidebar

Install

npm i @typeforce/is-string

Weekly Downloads

0

Version

1.0.1

License

MIT

Unpacked Size

7.21 kB

Total Files

8

Last publish

Collaborators

  • mgthomas99