1 | # strip-json-comments [![Build Status](https://travis-ci.org/sindresorhus/strip-json-comments.svg?branch=master)](https://travis-ci.org/sindresorhus/strip-json-comments)
|
2 |
|
3 | > Strip comments from JSON. Lets you use comments in your JSON files!
|
4 |
|
5 | This is now possible:
|
6 |
|
7 | ```js
|
8 | {
|
9 | // Rainbows
|
10 | "unicorn": /* ❤ */ "cake"
|
11 | }
|
12 | ```
|
13 |
|
14 | It will replace single-line comments `//` and multi-line comments `/**/` with whitespace. This allows JSON error positions to remain as close as possible to the original source.
|
15 |
|
16 | Also available as a [Gulp](https://github.com/sindresorhus/gulp-strip-json-comments)/[Grunt](https://github.com/sindresorhus/grunt-strip-json-comments)/[Broccoli](https://github.com/sindresorhus/broccoli-strip-json-comments) plugin.
|
17 |
|
18 |
|
19 | ## Install
|
20 |
|
21 | ```
|
22 | $ npm install strip-json-comments
|
23 | ```
|
24 |
|
25 |
|
26 | ## Usage
|
27 |
|
28 | ```js
|
29 | const json = `{
|
30 | // Rainbows
|
31 | "unicorn": /* ❤ */ "cake"
|
32 | }`;
|
33 |
|
34 | JSON.parse(stripJsonComments(json));
|
35 | //=> {unicorn: 'cake'}
|
36 | ```
|
37 |
|
38 |
|
39 | ## API
|
40 |
|
41 | ### stripJsonComments(jsonString, options?)
|
42 |
|
43 | #### jsonString
|
44 |
|
45 | Type: `string`
|
46 |
|
47 | Accepts a string with JSON and returns a string without comments.
|
48 |
|
49 | #### options
|
50 |
|
51 | Type: `object`
|
52 |
|
53 | ##### whitespace
|
54 |
|
55 | Type: `boolean`<br>
|
56 | Default: `true`
|
57 |
|
58 | Replace comments with whitespace instead of stripping them entirely.
|
59 |
|
60 |
|
61 | ## Benchmark
|
62 |
|
63 | ```
|
64 | $ npm run bench
|
65 | ```
|
66 |
|
67 |
|
68 | ## Related
|
69 |
|
70 | - [strip-json-comments-cli](https://github.com/sindresorhus/strip-json-comments-cli) - CLI for this module
|
71 | - [strip-css-comments](https://github.com/sindresorhus/strip-css-comments) - Strip comments from CSS
|
72 |
|
73 |
|
74 | ---
|
75 |
|
76 | <div align="center">
|
77 | <b>
|
78 | <a href="https://tidelift.com/subscription/pkg/npm-strip-json-comments?utm_source=npm-strip-json-comments&utm_medium=referral&utm_campaign=readme">Get professional support for this package with a Tidelift subscription</a>
|
79 | </b>
|
80 | <br>
|
81 | <sub>
|
82 | Tidelift helps make open source sustainable for maintainers while giving companies<br>assurances about security, maintenance, and licensing for their dependencies.
|
83 | </sub>
|
84 | </div>
|