Go에서 객체 배열을 새 배열로 매핑하려면 유연성에 맞는 우아한 접근 방식이 필요합니다. 다른 언어에서도 유사한 작업이 간편합니다. Map 함수를 사용하여 각 요소를 변환할 수 있는 Node.js와 달리 Go의 배열은 변경할 수 없습니다.
원 라이너 솔루션 찾기:
질문은 JavaScript의 맵 기능 동작을 모방하여 개체 배열을 해당 과일 배열로 매핑하는 우아한 한 줄 솔루션을 찾습니다. 범위 루프는 옵션이지만 한 줄 솔루션이 선호됩니다.
Map 함수 소개:
Go에는 배열에 대한 Map 메소드가 내장되어 있지 않습니다. , 일반적인 최상위 기능을 생성할 수 있습니다. Map 함수는 요소 조각과 각 요소를 원하는 결과로 변환하는 함수를 허용하여 이러한 목적을 달성합니다.
func Map[T, U any](ts []T, f func(T) U) []U { us := make([]U, len(ts)) for i := range ts { us[i] = f(ts[i]) } return us }
Map 함수 적용:
Map 기능을 사용하면 원하는 단일 라이너를 다음과 같이 작성할 수 있습니다. 다음:
fruits := Map(list, func(el Element) string { return el.Fruit })
결론:
Map 함수는 객체 배열을 변환된 값의 새로운 배열로 매핑하는 우아하고 효율적인 방법을 제공합니다. Go의 배열은 다른 언어와 동일한 유연성을 제공하지 않을 수 있지만 Map과 같은 일반적인 최상위 기능은 데이터 변환 작업에 대한 표현적이고 관용적인 솔루션을 허용합니다.
위 내용은 One-Liner를 사용하여 Go에서 객체 배열을 새 배열에 우아하게 매핑하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!