JavaScript to JSON Converter
Convert JavaScript object literals to valid JSON. Removes comments, handles single quotes, unquoted keys, and trailing commas. Perfect for cleaning up console logs, config files, or code examples.
Conversion Options
Recommended Settings
Common Conversions
- •Comments (// and /* */) are automatically removed
- •Single quotes converted to double quotes
- •Unquoted keys get double quotes added
- •Trailing commas are stripped
Limitations
- •Cannot convert functions or methods
- •undefined, NaN, Infinity show errors
- •Template literals (backticks) not supported
- •Computed properties require manual conversion
Pro Tips
- •Use double quotes in your JavaScript for best results
- •Remove functions and undefined before conversion
- •Test with simple objects first, then complex nested structures
- •Already valid JSON? Tool will just format it nicely
Most Popular
Most users convert with 2-space indent and sort keys disabled
When to Use This Tool
Convert JavaScript object literals from console logs, browser dev tools, or debugging sessions into valid JSON for API testing, documentation, or data processing. Perfect for cleaning up copied data that includes comments, single quotes, or trailing commas.
Recommended: Development
Transform JavaScript config files (.js, .config.js) with comments and flexible syntax into standard JSON format (.json). Useful when migrating from JS-based configs like .eslintrc.js or webpack.config.js to JSON equivalents for tooling compatibility.
Recommended: Migration
Convert JavaScript object examples from tutorials, documentation, Stack Overflow, or code snippets into valid JSON for use in APIs, databases, or JSON-only environments. Automatically handles common JavaScript conveniences like unquoted keys and comments.
Recommended: Learning
How It Works
Paste your JavaScript object literal into the input
Tool removes all comments (// and /* */)
Converts single quotes to double quotes
Adds quotes to unquoted object keys
Removes trailing commas from objects and arrays
Validates for unsupported JavaScript features (functions, undefined, etc.)
Parses and validates the result as JSON
Optionally sorts keys alphabetically
Formats with your chosen indent size (2, 4, or minified)
100% Private
Files never leave your device. All processing happens locally in your browser.
Lightning Fast
Powered by Client-side JavaScript with strip-comments library for optimal performance on modern browsers.
Open Source
Built with verified, open-source libraries. Fully transparent.
Frequently Asked Questions
What JavaScript features can be converted?
This tool converts JavaScript object literals with: (1) Single-line and multi-line comments, (2) Single quotes, (3) Unquoted object keys, (4) Trailing commas. It handles basic data types: strings, numbers, booleans, arrays, objects, and null. Complex features like functions, undefined, template literals, computed properties, and spread operators cannot be converted.
What happens to comments in my JavaScript?
All comments (both // single-line and /* multi-line */ comments) are automatically removed during conversion, as JSON doesn't support comments. The data structure is preserved, but any documentation or notes in comments will be lost. Consider saving comments separately if needed.
How does the tool handle single quotes?
Single quotes around strings are automatically converted to double quotes, which is required by JSON. The tool also adds double quotes to unquoted object keys (e.g., {key: 'value'} becomes {"key": "value"}). Note: complex nested quote scenarios may require manual adjustment.
Can I convert JavaScript with functions or undefined values?
No, JSON doesn't support functions, undefined, NaN, Infinity, template literals, or other JavaScript-specific values. The tool will detect these and show an error message. For functions and undefined, remove them or replace undefined with null before conversion. This is a JSON specification limitation, not a tool limitation.
What if my JavaScript is already valid JSON?
If your input is already valid JSON, the tool will detect this and simply format it according to your indent settings and sort keys preference. No conversion is needed - it will skip the transformation steps and just prettify or minify the output.
Is my data safe and private?
Absolutely! All JavaScript to JSON conversion happens entirely in your browser using client-side JavaScript. Your code and data are never sent to any server, uploaded anywhere, or stored. Everything processes locally, ensuring complete privacy and security for your sensitive code.