https://github.com/corocoto/conversify
npm-package that represents an advanced implementation of JSON.stringify method
https://github.com/corocoto/conversify
convert json string stringify
Last synced: about 1 month ago
JSON representation
npm-package that represents an advanced implementation of JSON.stringify method
- Host: GitHub
- URL: https://github.com/corocoto/conversify
- Owner: corocoto
- License: mit
- Created: 2020-08-08T13:20:47.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2021-05-16T11:04:08.000Z (about 5 years ago)
- Last Synced: 2025-10-09T13:23:31.093Z (8 months ago)
- Topics: convert, json, string, stringify
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/conversify
- Size: 543 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# [conversify](https://www.npmjs.com/package/conversify)
[](https://github.com/corocoto/conversify/actions)






## Description

**conversify** is a package that represents an advanced implementation of `JSON.stringify` method.
It allows you to convert JSON unsupported values to string correctly.
Such as `Date` value, `+/-Infinity`, `undefined`, `NaN` and function realization in `Array` or `Object`.
## Installation
```
npm install conversify
```
## Example of using
```js
const conversify = require('conversify');
const stringifiedObj = conversify({
name: 'Ivan',
surname: 'Ivanov',
fullname() {
return `${this.name} ${this.surname}`
},
birthday: new Date('1999-05-02')
}, 4); //Second argument is optional. It used to insert white space into the output JSON string for readability purposes.
console.log(stringifiedObj);
/*
* Output:
* {
* "name": "Ivan",
* "surname": "Ivanov",
* "fullname": function () {
* return `${this.name} ${this.surname}`;
* },
* "birthday": new Date('1999-05-02T00:00:00.000Z')
* }
*/
```
## Comparison
Array that will be used for comparison two methods (`JSON.strinigfy` and `conversify`):
```js
const testArr = [
NaN,
undefined,
null,
new Date(),
Date(),
new Date('2020-02-01'),
new Date('abcd'),
'some text',
3.14,
15845,
-Infinity,
Infinity,
() => console.log(`It's function body`),
{
name: 'Ivan',
surname: 'Ivanov',
fullname () {
return `${this.name} ${this.surname}`;
},
birthday: new Date('1999-05-02'),
},
];
```
**Result**:
| `JSON.stringify` | `conversify` |
|------------------|--------------|
|
|
|
## License
**conversify** package is open-sourced software licensed under the MIT License (MIT). Please see [License File](LICENSE) for more information.
## Changelog
Detailed changes for each release are documented in the [release notes](CHANGELOG.md).
## Contributing
I'm thanks all the people who contributed or who want to contribute to **conversify**.
If you want to contribute, make sure that read the [Contributing Guide](CONTRIBUTING.md) before making a pull request, thanks.
## Conclusion
If you still have questions about the work of this package :grey_question: or you have cool ideas for it improvement :boom:, please write to me :email:.
If you find a bug :bug:, please create an appropriate issue with detailed information about it :speech_balloon:.
Thanks!