JSON5 객체를 JSON으로 변환 — Numio
JavaScript 객체 리터럴을 2칸 들여쓰기의 엄격한 JSON으로 변환합니다. 따옴표 없는 키, 작은따옴표, 주석, 후행 쉼표, 16진수, 소수점으로 시작하는 소수도 받아 정규화합니다.
.js 파일의 설정이나 픽스처 객체를 JSON 파일, API 요청 본문, Postman 컬렉션으로 옮길 때.
주석, 작은따옴표, 후행 쉼표가 포함된 JSON과 JSON5를 지원합니다. 함수와 JavaScript 표현식은 실행하지 않습니다.
JS Object
JSON
이럴 때 사용하세요
- .js 파일의 설정이나 픽스처 객체를 JSON 파일, API 요청 본문, Postman 컬렉션으로 옮길 때.
- 브라우저 DevTools나 문서에서 붙여 넣은 객체를 엄격한 JSON 파서를 통과하도록 정리할 때.
사용 방법
- 객체 리터럴(데이터만, 변수 선언과 끝의 세미콜론 제외)을 왼쪽 편집기에 붙여 넣거나, 파일 불러오기 버튼으로 UTF-8 파일을 엽니다.
- 입력하는 대로 오른쪽에 JSON이 표시됩니다. "invalid character" 같은 오류가 나오면 표시된 줄과 열을 확인합니다.
- 변환된 값(16진수는 10진수로, 따옴표는 큰따옴표로)을 확인하고 결과를 복사합니다.
JavaScript 객체 리터럴
{
// Mongoose-style field definition
title: {
type: 'String',
required: true,
},
year: { type: 'Number', max: 0x7E6 },
tags: ['draft', 'review',],
ratio: .75,
'content-type': "text/plain",
}JSON
{
"title": {
"type": "String",
"required": true
},
"year": {
"type": "Number",
"max": 2022
},
"tags": [
"draft",
"review"
],
"ratio": 0.75,
"content-type": "text/plain"
}세부 정보 및 제한 사항
입력은 브라우저에서 JSON5 파서로 파싱되며 코드는 실행되지 않습니다. 표현식, 함수, new Date(), 템플릿 리터럴, undefined, 변수 참조는 잘못된 문자로 거부됩니다.
NaN과 Infinity는 JSON으로 표현할 수 없으므로 오류가 납니다.
주석과 원래의 키 서식은 유지되지 않습니다. 출력은 항상 큰따옴표와 2칸 들여쓰기를 사용합니다.
2^53을 넘는 정수는 정밀도를 잃습니다(12345678901234567890은 12345678901234567000이 됨). 큰 ID는 문자열로 쓰세요.
FAQ
const config = { ... };를 붙여 넣어도 되나요?
아니요. 값만 받습니다. 선언과 끝의 세미콜론을 지우세요. 그렇지 않으면 파서가 그 위치에서 잘못된 문자를 보고합니다.
중복된 키는 어떻게 되나요?
마지막에 나온 값이 적용됩니다. {a: 1, a: 2}는 경고 없이 {"a": 2}가 되므로, 직접 병합한 객체는 확인하세요.
루트에 배열이나 단일 값을 넣어도 되나요?
네. 어떤 JSON5 값이든 됩니다. 예를 들어 [1, 2,]는 요소 2개짜리 JSON 배열이 되고 'hi'는 "hi"가 됩니다.