sort()
const arr1 = [1, 4, 5, 7, 9, 3];
const result = arr1.sort(function (comp1, comp2) {
return comp1 - comp2;
});
console.log(result); // [1, 3, 4, 5, 7, 9]
//or
const result = arr1.sort((comp1, comp2) =>{
return comp1 - comp2;
});
arr1.sort() 를 사용하게 되면은 문자형 오름차순으로 정렬됩니다(내가 원하는 정렬값이 아님). 따라서 함수 comp1 과 comp2를 비교하여 return 해주는 함수를 추가해주어야 합니다. (꼭 return 해주셔야합니다 안하면 원하는 값의 배열을 얻을수없습니다)
배열내부에 객체형식일때는 아래처럼 정렬합니다.
//객체가 오브젝트 형식일때
let arr = [
{
group: "LOAN",
title: "신용대출",
yearRate: 6.0,
},
{
group: "ORDINARY",
title: "예금상품",
yearRate: 2.0,
},
{
group: "SAVE",
title: "예금상품",
yearRate: 3.639,
},
];
let result;
result = arr.sort((a, b) => {
a.yearRate - b.yearRate;
});
slice()
인자로는 startIndex 와 endIndex (배열의 endIndex 전까지만) 새로운 객체 배열로 반환해줍니다.
let arr = [1,2,3,4,5,6,7,8];
let arr1 = arr.slice(3,6);
console.log(arr1) // [4,5,6]
forEach()
배열의 각각 원소별로 내가 원하는 함수를 실행시켜줄수있습니다. return 값 없음
let arr = [
{
group: "LOAN",
title: "신용대출",
yearRate: 6.0,
},
{
group: "ORDINARY",
title: "예금상품",
yearRate: 2.0,
},
{
group: "SAVE",
title: "예금상품",
yearRate: 3.639,
},
];
arr.forEach((value) => {
console.log(value.yearRate);
}); // 6 2 3.639 출력이 됩니다.
map()
원 배열을 수정하지 않고 내가 원하는 조건에 맞게 짝지어진 새로운 배열을 만들어냅니다.
//단순 배열
const arr = [1, 2, 3];
let myarr = arr.map((num)=>{
return num + 5;
});
console.log(myarr); //[6, 7, 8]
//객체
let arr = [
{
group: "LOAN",
title: "신용대출",
yearRate: 6.0,
},
{
group: "ORDINARY",
title: "예금상품",
yearRate: 2.0,
},
{
group: "SAVE",
title: "예금상품",
yearRate: 3.639,
},
];
// arr.forEach((value) => {
// console.log(value.yearRate);
// });
let myarr = arr.map((value) => {
return value.title;
});
console.log("🚀 ~ file: todo.js ~ line 89 ~ myarr ~ myarr", myarr); //['신용대출', '예금상품', '예금상품']
reduce()
반복해서 배열의 값을 반환 -> 누적해서 값이 필요할때 사용됩니다.
const arr = [1, 2, 3, 4, 5 ];
const myarr = arr.reduce((prev, curr, curI, arr) => (prev + curr), 0);
console.log(myarr); //15
filter()
배열내에서 내가 원하는 값만 필터링해서 얻고싶을때 사용합니다.
아래 filter는 title이 "예금상품"인 물품만 filter해서 return 하여 새로운 배열에 저장합니다.
let arr = [
{
group: "LOAN",
title: "신용대출",
yearRate: 6.0,
},
{
group: "ORDINARY",
title: "예금상품",
yearRate: 2.0,
},
{
group: "SAVE",
title: "예금상품",
yearRate: 3.639,
},
];
let myarr = arr.filter((value) => {
return value.title === "예금상품";
});
console.log("🚀 ~ file: todo.js ~ line 89 ~ myarr ~ myarr", myarr);
// return 값
{group: 'ORDINARY', title: '예금상품', yearRate: 2}
{group: 'SAVE', title: '예금상품', yearRate: 3.639}
//
'언어 > Javascript' 카테고리의 다른 글
[JavaScript] Callback functions 콜백함수란? (0) | 2024.12.13 |
---|---|
[JavaScript] 일반 함수 vs 화살표 함수(arg, this) (0) | 2024.12.13 |
[JavaScript] This 와 Bind (0) | 2024.12.12 |
[JavaScript] var, let, const 의 차이(호이스팅) (2) | 2024.12.04 |
javascript 객체 깊은 복사(Deep Copy) VS 얕은 복사(Shallow Copy) (0) | 2022.11.07 |