npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

find-duplicated-property-keys

v1.2.9

Published

A package for detecting all duplicated property keys of a JSON string.

Downloads

98,974

Readme

find-duplicated-property-keys

npm version Build Status Coverage Status JavaScript Style Guide

A package for detecting all duplicated property keys of a JSON string. It can either be used as a standalone tool for validating JSON files or as a submodule for other Node.js projects.

Use as a Standlone Tool

If you like to use find-duplicated-property-keys as a standalone tool, you first have to install it by using the following command:

$ npm install find-duplicated-property-keys

To run this tool you simply need to execute it from the installation directory like this:

$ node_modules/.bin/find-duplicated-property-keys -s <path-to-json-file>

Of course, if you prefer a more comfortable way of running this tool, you can also install it globally by using this command:

$ npm install -g find-duplicated-property-keys

Then you can run find-duplicated-property-keys from any directory by using the following command:

$ find-duplicated-property-keys -s <path-to-json-file>

When running the tool from terminal, it will list all duplicated property keys followed by the number of their occurrence or return a notification to indicate the JSON file does not contain any duplicated property keys. In addition to that, find-duplicated-property-keys will then also return one of the following exit codes:

|Exit Code|Description| |:--|:--| |0|The passed JSON file has been analyzed succesfully and no duplicated property keys have been detected. Note, this exit code will also be returned, if the help text has been requested by either running find-duplicated-property-keys without any parameters or with the parameter --help or its alias -h solely.| |1|An exception has been thrown by the tool and the validation process was unable to determine a result.| |101|The passed JSON file has been analyzed succesfully and at least one duplicated property key has been detected.|

Use as a Submodule

In case you need to include find-duplicated-property-keys into another project, you first have to add it to your Node.js application by executing the following command while being in the root directory of your project:

$ npm install find-duplicated-property-keys

To validate a JSON string you can run the module as described in the following example:

const findDuplicatedPropertyKeys = require('find-duplicated-property-keys');

const jsonString = '{"name": "Carl", "name": "Carla", "age": 29}';

const result = findDuplicatedPropertyKeys(jsonString);

console.log(result.toString()); // <instance>.name

The returned result will be an array that contains all duplicated property keys. Each of these property keys is represented by an object which has the following attributes:

|Attribute|Description| |:--|:--| |key|The key name of the duplicated property. |parent|The parent object of a property key. |occurrence|The number of property keys having the same key and parent object.

Moreover, these objects also contain the following functions for illustrating the actual path to the property key:

|Function|Description| |:--|:--| |propertyPath()|Returns a list of property keys, which represents the path to the property key of the current object. |toString()|Prints the path to the property key. However, since all necessary raw data are also contained by the object, the result objects can also be represented in any other way if desired.

Note: When using find-duplicated-property-keys as a submodule, you always have to pass a JSON string instead of the file path to a JSON file.