본문 바로가기

Programming Language/JS & JQuery

[JavaScript]변수내용이 json인지 확인하는 method(check valid json)

js에서 사용하고 있는 variable이 json인지 여부를 확인하고 싶을때가 있다. npm을 사용한 여러 library를 사용하는 방법도 있지만 아래와 같이 간단한 method를 활용하는 방법도 있다.

 

function IsJsonString(str) {
  try {
    var json = JSON.parse(str);
    return (typeof json === 'object');
  } catch (e) {
    return false;
  }
}

JSON.parse(str) 메서드 ECMAScript 2015의 standard method이다.

mozilla사이트에 나와있는 JSON.parse의 브라우저 호환성

JSON.parse(str)는 json의 문자열 구문을 분석하고 들어온 파라미터를 js값이나 객체로 생성한다. 이때 정상적인 json type이 아닌경우 exception을 반환하게 되는데, 이를 사용해서 json인지 여부를 판별 할 수있다.

 

출처

https://stackoverflow.com/questions/3710204/how-to-check-if-a-string-is-a-valid-json-string-in-javascript-without-using-try

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse