DrMaemi / blog

1 stars 0 forks source link

[Typescript] String split 후 각 데이터를 담은 객체 리스트 반환 #108

Open DrMaemi opened 1 year ago

DrMaemi commented 1 year ago
interface Host {
  hostname: string
}

위와 같이 Host가 정의되어 있을 때, hostnames라는 string 타입의 변수에 줄바꿈으로 구분된 여러 hostname이 들어있는 상황에서 split() map() 함수를 이용해 각 hostname을 담고 있는 Host List를 반환하는 함수를 아래와 같이 작성할 수 있다.

function parseHostnames(hostnames: string): Host[] {
  const parsedHosts: Host[] = hostnames
    .split('\n')
    .map(hostname => ({ hostname }));

  return parsedHosts;
}

const hostnames = 'example.com\nlocalhost\napi.example.com';
const parsedHosts = parseHostnames(hostnames);
console.log(parsedHosts);

결과

[ 
  { hostname: 'example.com' },
  { hostname: 'localhost' },
  { hostname: 'api.example.com' }
]