- 6강
문제 1번
type Item = string | number;
function stringToNumber(arr: Item[]) {
return arr.map((item) => {
if (typeof item === "string") {
return Number(item);
}
return item;
});
}
const newArr = stringToNumber([1, 5, "3"]);
return (
<>
{newArr.map((item) => (
<h1>{item}</h1>
))}
</>
);
문제 2번
const teacher1 = { subject: "math" };
const teacher2 = { subject: ["science", "english"] };
const teacher3 = { subject: ["science", "art", "korean"] };
function getLastSubject(teacher: { subject: string | string[] }) {
const { subject } = teacher;
console.log(subject);
if (Array.isArray(subject)) {
return subject[subject.length - 1];
} else if (typeof subject === "string") {
return subject;
} else {
return "없음";
}
}
const result1 = getLastSubject(teacher1);
const result2 = getLastSubject(teacher2);
const result3 = getLastSubject(teacher3);
console.log(result1, result2, result3);
- 7강
type A = {
a: string;
b: string;
};
type B = {
b: string;
c: string;
};
type C = A & B;
const someObj: C = {
a: "a",
b: "b",
c: "c",
};
console.log(someObj);
type SomeType = {
color?: string;
size: number;
readonly position: number[];
};
type Info = {
name: string,
phone: number,
email: string,
}
type UserInfo = {
isAdult:boolean,
} & Info;
- 8강
type Word = "가위" | "바위" | "보";
function getRockScissorsPaper(word: Word): Word[] {
return [word];
}
getRockScissorsPaper("가위");