node.js v.0.5부터 json 파일 require()로 가져 올 수 있다.
그런데... 형식에 조금만 벗어나도 에러가 발생하는데.. 형식은... 잘 맞추면 되는데요..
문제는....주석을 넣어도 에러가 난다 orz
( 당연히 다른 라이브러리나 file 읽어서 하는 방법도 있지만 기본 기능을 그대로 쓰고 싶음...)
$ vi test.js var testJson = require('./test.json'); console.log(testJson); $ vi test.json { //comment test "key1":"test1", "key2":"test2", }
$ node test.js module.js:485 throw err; ^ SyntaxError: /data/webroot/test.json: Unexpected token / at Object.parse (native) at Object.Module._extensions..json (module.js:482:27) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Module.require (module.js:364:17) at require (module.js:380:17) at Object.<anonymous> (/data/webroot/test.js:1:78) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32)
그래서 구글링 결과!!
http://stackoverflow.com/questions/244777/can-i-comment-a-json-file
{ //코멘트라는 키를 생성해버리면됨
"_comment": "comment text goes here...",
"glossary": {
{ //키명을 똑같이 해서 위에 설명을 넣어도될듯
"api_host" : "The hostname of your API server. You may also specify the port.",
"api_host" : "hodorhodor.com",
생각의 차이~!! 아래처럼 구분할 수있게 ㅎㅎ 어자피 해당 키는 안쓰면 되니까 ㅎㅎ
$ vi test.json { "*****COMMENT*****" : "test comment", "key1":"test1", "*****COMMENT*****" : "test comment11", "key2":"test2", "*****COMMENT*****" : "" }
$ node test.js { '*****COMMENT*****': '', key1: 'test1', key2: 'test2' }