inspect-with-kind
`util.inspect` with additional type information
Last updated 8 years ago by shinnn .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ npm install inspect-with-kind 
SYNC missed versions from official npm registry.

inspect-with-kind

npm version Build Status Coverage Status

util.inspect with additional type information

const {inspect} = require('util');
const inspectWithKind = require('inspect-with-kind');

inspect([1, 2, 3]); //=> '[ 1, 2, 3 ]'
inspectWithKind([1, 2, 3]); //=> '[ 1, 2, 3 ] (array)'

Installation

Use npm.

npm install inspect-with-kind

API

const inspectWithKind = require('inspect-with-kind');

inspectWithKind(value [, options])

value: any type
options: Object (util.inspect options)
Return: string

Almost the same as util.inspect, but:

  • It appends a type information to the string if the first argument is one of boolean, string, number, bigint, Array, RegExp, Date, arguments or a plain Object.
  • Error stack trace is omitted.
  • breakLength option defaults to Infinity.
  • maxArrayLength option defaults to 10.
const util = require('util');
const inspectWithKind = require('inspect-with-kind');

// appends type info
util.inspect(1); //=> '1'
inspectWithKind(1); //=> '1 (number)'
util.inspect('1'); //=> '\'1\''
inspectWithKind('1'); //=> '\'1\' (string)'

// doesn't appends type info, because <Buffer ...> clearly expresses what it is
util.inspect(Buffer.from('1')); //=> '<Buffer 31>'
inspectWithKind(Buffer.from('1')); //=> '<Buffer 31>'

// omits stack trace
util.inspect(new Error('error!')); //=> 'Error: error!\n    at repl:1:14\n    at ContextifyScript ...'
inspectWithKind(new Error('error!')); //=> 'Error: error!'

Example

This module is useful for making TypeError error messages in your Node.js library.

const inspectWithKind = require('inspect-with-kind');

module.exports = function reverse(v) {
  if (typeof v !== 'boolean') {
    throw new TypeError(`Expected a Boolean value, but got ${inspectWithKind(v)}.`);
  }

  return !v;
};
const reverse = require('./reverse.js');

reverse(/true/); // TypeError: Expected a Boolean value, but got /true/ (regexp).

License

ISC License © 2017 Shinnosuke Watanabe

Current Tags

  • 1.0.5                                ...           latest (6 years ago)

7 Versions

  • 1.0.5                                ...           6 years ago
  • 1.0.4                                ...           7 years ago
  • 1.0.3                                ...           7 years ago
  • 1.0.2                                ...           8 years ago
  • 1.0.1                                ...           8 years ago
  • 1.0.0                                ...           8 years ago
  • 0.0.0                                ...           8 years ago
Maintainers (1)
Downloads
Total 5
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (1)
Dev Dependencies (5)
Dependents (2)

© 2010 - cnpmjs.org x YWFE | Home | YWFE