함수 구현 기법
매개변수 기본값 지정하기
함수호출시 인수를 전달하지 않더라도 매개변수에 기본적으로 값을 설정해둘 수 있습니다. 이를 default parameter라고 하고 아래와 같은 형태로 사용합니다.
(매개변수: 타입 = 매개변수 기본값)
export type Person = {name: string, age: number, livePoint: string}
export const makePerson = (name: string, age: number, livePoint: string = "Korea"): Person => {
const person = {name: name, age:age, livePoint:livePoint}
return person
}
console.log(makePerson("doyoon", 22, "suwon"))
console.log(makePerson("jun-sung", 23))
//{ name: 'doyoon', age: 22, livePoint: 'suwon' }
//{ name: 'jun-sung', age: 23, livePoint: 'Korea' }
객체 생성시 값 부분을 생략할 수 있는 Ts 구문
타입스크립트는 매개변수의 이름과 똑같은 이름의 속성을 가진 객체를 만들 수 있습니다. 이때 속성값 부분을 생략할 수 있는 단축 구문을 제공합니다.
export const makePerson = (name: string, age: number, livePoint: string = "Korea"): Person => {
const person = {name, age, livePoint}
return person
}
객체를 반환하는 화살표 함수
export const makePerson = (name: string, age: number, livePoint: string = "Korea") =>{name, age, livePoint}
// 이러면 안댐
export const makePerson = (name: string, age: number, livePoint: string = "Korea") =>({name, age, livePoint})
컴파일러가 {}를 객체로 해석하게 하려면 객체를 소괄호()로 감싸주어야 한다.
매개변수에 비구조화 할당문 사용
export type Person = {name: string, age: number, livePoint: string}
export const printPerson = ({name, age, livePoint}: Person): void => {
console.log(`name: ${name}, age:${age}, livePoint: ${livePoint}`)
}
printPerson({name:"doyoon", age:22, livePoint:"Korea"})
// name: doyoon, age:22, livePoint: Korea
색인 키와 값으로 객체만들기
const makeObject = (key, value) => ({[key],value})
객체의 속성 이름을 변수로 만들려고 할 때 사용.
타입스크립트에서 {[key],value}와 같은 형태의 타입을 색인기능 타입 이라고 합니다.
type KeyType = {
[key: string]: string
}
위와 같은 형태로 key와 value 타입을 명시합니다.
export type KeyValueType = {
[key: string] : string //key는 string // value도 string
}
const makeObject = (key: string, value: string):KeyValueType => ({[key]: value})
console.log(makeObject("firstName", "Park"))
console.log(makeObject('name', 'en_sik'))
//{ firstName: 'Park' }
//{ name: 'en_sik' }
Author And Source
이 문제에 관하여(함수 구현 기법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@doyoon9601/함수-구현-기법저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)