map메서드
const arr = [1,2,3];
const newArr = arr.map((it)=> it*2);
function map<T>(arr: T[], callback: (item: T) => T) {
let result: T[] = [];
for (let i = 0; i < arr.length; i++) {
result.push(callback(arr[i]));
}
return result;
}
map(arr, (it)=> it*2);
수정
function map1<T,U>(arr: T[], callback: (item: T) => U) {
let result: U[] = [];
for (let i = 0; i < arr.length; i++) {
result.push(callback(arr[i]));
}
return result;
}
console.log(map1(arr, (it)=> it.toString()))
forEach 메서드
const arr2 = [1, 2, 3];
arr2.forEach((it) => console.log(it));
function forEach<T>(arr:T[], callback:(item:T)=> void){
for(let i =0; i < arr.length; i++){
callback(arr[i])
}
}
forEach(arr2, (it)=>{
console.log(it.toFixed())
})
forEach(['123','456'], (it)=>{
it;
})