[결론]
key와 value로 구성되어야 value 값을 "쉽게" 꺼낼 수 있다.
string은 value값이 없기 때문에 꺼낼 수 없다. 만약 꺼내려면 indexOf, charAt 등 메서드를 이용해서 복잡하게 꺼내야 한다.
따라서 '객체' 형태인 JSON 형태로 return 값을 가져야 한다.
JSON (JavaScript Object Notation) 문자열은 일반적인 문자열과 몇 가지 차이점이 있습니다.
이러한 차이점은 JSON 문자열을 처리하는 데 유용한 기능을 제공합니다.
다음은 JSON 문자열에서만 사용할 수 있는 기능과 일반 문자열과의 차이점을 예시와 함께 설명합니다:
- JSON 구문 분석(Parsing):
- JSON 문자열은 JSON.parse() 함수를 사용하여 JavaScript 객체로 변환할 수 있습니다.
- 예시:
javascript
const jsonString = '{"name": "John", "age": 30}'; const obj = JSON.parse(jsonString); console.log(obj.name); // Output: "John"
- 일반 문자열은 이와 같은 구문 분석 기능이 없습니다.
- JSON 직렬화(Stringification):
- JSON 객체는 JSON.stringify() 함수를 사용하여 JSON 문자열로 변환할 수 있습니다.
- 예시:
javascript
const obj = {name: "John", age: 30}; const jsonString = JSON.stringify(obj); console.log(jsonString); // Output: '{"name":"John","age":30}'
- 일반 문자열은 이와 같은 직렬화 기능이 없습니다.
- 구조화된 데이터 표현:
- JSON 문자열은 객체, 배열, 숫자, 문자열, 부울 값 및 null 값과 같은 구조화된 데이터를 표현할 수 있습니다.
- 예시:
javascript
const jsonString = '{"name": "John", "age": 30, "hobbies": ["reading", "swimming"]}';
- 일반 문자열은 이와 같은 구조화된 데이터 표현이 어렵습니다.
- 유효성 검사:
- JSON 문자열은 엄격한 구문 규칙을 따르며, JSON.parse() 함수는 유효성 검사를 수행합니다.
- 예시:
javascript
const invalidJsonString = '{"name": "John", "age": 30,}'; // 쉼표 뒤에 추가 데이터가 없음 const obj = JSON.parse(invalidJsonString); // SyntaxError: Unexpected token } in JSON at position 34
- 일반 문자열은 이와 같은 유효성 검사 기능이 없습니다.
- 데이터 교환 및 저장:
- JSON 문자열은 데이터를 교환하고 저장하는 데 널리 사용되는 형식입니다.
- 예시:
- 웹 API에서 데이터를 전송하고 받을 때 JSON 형식을 사용합니다.
- 데이터베이스에 데이터를 저장할 때 JSON 형식을 사용할 수 있습니다.
- 일반 문자열은 이와 같은 데이터 교환 및 저장 용도로 사용되지 않습니다.
요약하면, JSON 문자열은 구문 분석, 직렬화, 구조화된 데이터 표현, 유효성 검사 및 데이터 교환 및 저장과 같은 특별한 기능을 제공하는 반면, 일반 문자열은 이러한 기능이 없습니다. 이러한 차이로 인해 JSON 문자열은 데이터 처리와 교환에 매우 유용합니다.
'백엔드 > 스프링 프레임워크 단어정리' 카테고리의 다른 글
Spring Framework / @Autowired 어노테이션 / 스프링 컨테이너: ApplicationContext 역할 (0) | 2024.07.17 |
---|---|
get vs post (0) | 2024.07.16 |
(오류) Mapped Statements... 해결 방안 (0) | 2024.07.16 |
스프링 프레임워크 Controller에서 .do 를 쓰는 이유 / return 값이 갖는 의미 / '/'의 의미 (0) | 2024.07.16 |
★스프링 프레임워크 '작동순서'와 '작성순서' 총 정리 (0) | 2024.07.16 |