prop

Map에서 키에 해당하는 값을 반환하며, 없으면 null을 반환합니다.

V? prop<K, V>(K key, Map<K, V> map)

강의

prop('name', user) 자체가 하는 일은 Dart에서 user['name']이 이미 하는 일과 정확히 같습니다 — 키가 없으면 어느 쪽이든 null입니다. 그런데도 이것이 함수로 존재하는 이유는 조합 가능성 때문입니다. map[key]는 연산자일 뿐 여기저기 넘길 수 있는 값이 아니지만, (m) => prop('name', m)map이나 juxt, evolve의 콜백처럼 Function(Map)이 필요한 곳이라면 어디든 넘길 수 있는 평범한 단항 함수입니다.

리스트 전체에서 필드 하나를 뽑아내는 것이 목적이라면 pluck을 쓰세요 — 키가 이미 지정된 prop을 컬렉션 전체에 map 하는 일을 호출 한 번으로 해 줍니다.

데모 1 · 기본

데모 2 · tear-off로 쓰기, 그리고 pluck과의 비교

직접 해 보기

연습: prop으로 'theme'을 읽고, 없으면 'light'가 되도록 해 보세요.

관련 항목: props — 여러 키를 한 번에 읽기 · pluck — 리스트 전체에 map 한 prop · pick — 여러 키를 Map 형태로 남기기 · evolve — 값을 제자리에서 변환