2.0.0 • Published 6 years ago

jsonc v2.0.0

Weekly downloads
12,865
License
MIT
Repository
github
Last release
6 years ago

jsonc

build-status coverage-status npm release dependencies license maintained

© 2019, Onur Yıldırım (@onury). MIT License.

Everything you need in JSON land.

npm i jsonc

Features

  • Parse JSON with comments.
  • Stringify objects with circular references.
  • Safely parse / stringify without try/catch blocks.
  • Read and auto-parse JSON files gracefully, sync or async (with promises).
  • Auto-stringify and write JSON files gracefully, sync or async (with promises).
  • Strips UTF-8 BOM.
  • Log objects as JSON (without worrying about errors).
  • Uglify/beautify JSON strings.
  • More helpful JSON errors.
  • Friendly API.
  • TypeScript support.

Usage

See the concise API reference.

const jsonc = require('jsonc');
// or
import { jsonc } from 'jsonc';

This is safe for JSON with comments:

jsonc.parse('// comment\n{"data": /* comment */ "value"}\n'); // » { data: 'value' }

And this is safe for circular references:

const obj = { x: 1 };
obj.y = obj; // circular
jsonc.stringify(obj); // » { x: 1, y: '[Circular]' }

But this is seriously safe:

// safe version of every method
const jsonc = require('jsonc').safe;
// or
import { safe as jsonc } from 'jsonc';

const [err, result] = jsonc.parse('[invalid JSON}');
if (err) {
    console.log(`Failed to parse JSON: ${err.message}`);
} else {
    console.log(result);
}

Documentation

See the concise API reference.

Change Log

  • v2.0.0 (2019-06-17)
    • Requires Node.js v8 or newer.
    • Updated dependencies.
  • v1.1.0 (2018-11-22)
    • Fixed an issue where TypeScript compiler would complain about 'declare' modifier.
    • Improved typings for safe methods.
    • Updated core dependencies.
  • v1.0.0 (2018-10-18)
    • Initial release.

License

MIT.

edgeos-winparali@infinitebrahmanuniverse/nolb-jsonc@everything-registry/sub-chunk-1987@digitalzz/lowcode-code-generatorteneturautemwinttvvlad1973-telegram-frameworkspellchecker-clitesterantosy-code-generatortexasservervtexyvite-plugin-jsonxvitis-lowcode-code-generator@djleehaha/config@dslc/lowcode-code-generator@commitlint/config-rush-scopes@configuration-parsing/parser-jsonc@cuvp/cuvp-lowcode-code-generator@cyrilis/code-generator@cphayim/plus@rokkett/sveltekit-i18nja-environmentts-docfluxtomono@alexa-skill-components/catalog-explorer@alilc/lowcode-code-generator@backtrace-labs/javascript-cli@backtrace/javascript-cli@beeman/scully@abineo/sveltekit-i18n@bernales95/scully@dckj-npm/lowcode-code-generator@digiforce-cloud/dvd-code-generator@das.laboratory/vscode-config-interactiveyveszhixin-clizhixin-cli-tooltsconfig-filesups-bot-utilszz-lowcode-code-generator@hadeshe93/flow@fortanetwork/forta-bot@herodevs/coulson@fcallem/create-typescript-project@flowaccount/scullyio-scully@evanaj/lowcode-code-generator@lingxiteam/ebe@markuplint/file-resolver@epicgames-ps/lib-pixelstreamingsignalling-ue5.5@mengti/code-generator@mollbe/theme-compiler@istics/commander@jiankeyihao/lowcode-code-generator@omareloui/gf@ombro/h5plus@sanzenwin/vite-plugin-jsonx@onefu/lowcode-code-generator-pages@ocli/core@seada/lowcode-code-generator@scullyio/scullymr-jsonmintablemockissnarraleafnabetex2svg-nodesalt-nodejsrename-toolpnx-jsqik-clipumble-cliquick-transrao-lowcode-code-generator-1immunx-agenticloud-photos-synchilary-test-lowcode-code-generatorleeyw-lowcode-code-generatorly-lowcode-code-generatorlowcode-code-generator-ccslowcode-code-generator-multilowcode-plugin-code-generator-ccsmerge-json-configs@twinistics/heuristics-commander@twinistics/istics-commander@ton1517/suppress-biome-errors@stevecgc/lowcode-code-generatorbacktrace-servicecgrpcservercgservercuvp-lowcode-code-generatorbc-minecraft-bedrock-projectbc-minecraft-bedrock-diagnoserbc-vscode-wordsbluedot-generator-umi4ebeepro-code-generatorforta-agentgate-lowcode-code-generatorgate-lowcode-code-generator-2
2.0.0

6 years ago

1.1.0

7 years ago

1.0.0

7 years ago

0.1.0

12 years ago

0.0.0

13 years ago