-
카테고리
-
세부 분야
모바일 앱 개발
-
해결 여부
미해결
강의 8분 30초경부터 질문
22.01.20 13:32 작성 조회수 143
0
1. json Response['hits'] 는 jsonDecode가 된상태여서 JSON이 아닌 Array형태 아닌가요?
2. Iterable hits = jsonResponse['hits']; <-- 이게 현재 Map형태라고 하셨는데, 배열의 형태아닌가요?
만약 Map형태라면 hits.map 혹은 hits.forEach같은 JS 언어에서는 배열에서만 쓸수있는 함수를 Dart 언어에서는 객체형태에도 사용가능한건가요?
답변을 작성해보세요.
3
오준석
지식공유자2022.01.20
1. 네 맞습니다. 그런데 참고로 Dart에 Array 타입은 존재하지 않습니다. 그래서 굳이 따지자면 JsonArray 형태인가요? 라고 물으시면 정확한 것 같습니다. 이런 형태를 다룰 때 강제로 캐스팅해서 사용할 수 있는 타입으로는 Iterable이 있습니다. 이를 구현한 List, Set도 가능합니다만
2. 영상 다시 들어보니까 반복되는 형태인 Iterable 로 받아놓고 Map 형태라고 말하고 있었네요??. 정확히는 Map 들의 반복되는 형태를 얘기하려고 했던 것 같습니다. 일반 Json의 형태는 Dart에서 Map의 문법과 동일하여 Map으로 간주하고 처리하고 있습니다.
예리한 지적이십니다.
결론은 말씀하신 Array 형태가 맞습니다.
답변 1