๋ฐ์ํ
ํ ์ด ํ๋ก์ ํธ์์ ๋๋ฏธ ๋ฐ์ดํธ๋ฅผ ์์ฑํ์ต๋๋ค.
๋๋ฏธ๋ฐ์ดํฐ๋ ๋ฐฐ์ด ์์ ๊ฐ์ฒด์ ๋์ด๋ก ๋ง๋ค์์ต๋๋ค.
์ง๊ธ์ id์ ์ซ์๋ฅผ ๊ธฐ์ค์ผ๋ก ์ค๋ฆ์ฐจ์์ผ๋ก ํ๋ฉด์ ๋ํ๋๋๋ฐ, ์ ๋ ๋ด๋ฆผ์ฐจ์์ผ๋ก ํ๋ฉด์ ๋์ค๊ฒ ํ๊ณ ์ถ์์ต๋๋ค.
์ค์ต
const arr = [{p:1},{p:2},{p:3},{p:4},{p:5}]
arr.sort((f,s) => {
const idF = f.p;
const idS = s.p;
if(idF > idS) {
return -1;
}
if(idF < idS) {
return 1;
}
return 0;
} )
๊ฒฐ๊ณผ
[
{ p: 5 },
{ p: 4 },
{ p: 3 },
{ p: 2 },
{ p: 1 }
]
์ค์ ์ฝ๋
function Data({ data, setData }) {
// dummydata ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ฆฌํ๊ธฐ
const sortedData = data.sort((f, s) => {
const idF = f.id;
const idS = s.id;
if (idF > idS) {
return -1;
}
if (idF < idS) {
return 1;
}
return 0;
});
return (
<div>
{sortedData.map((data) => {
return (
<li key={data.id} className='data-list'>
<DiariesDate date={data.date}></DiariesDate>
{/* <div>{data.date}</div> */}
<div>{data.weight}kg</div>
<img src={data.photo} />
<div>{data.exercise}</div>
<div>{data.story}</div>
<span id='deleteBtn'>
<FontAwesomeIcon
icon={faTrashCan}
onClick={() => {
deleteBtnHandler(data.id);
}}
/>
</span>
<span id='updateBtn'>
<FontAwesomeIcon
icon={faPenNib}
// onClick={() => {
// updateBtnHandler(data.story);
// }
// }
/>
</span>
</li>
);
})}
</div>
);
}
์ ๋ sortedData๋ผ๋ ์๋ก์ด ๋ณ์๋ฅผ ์ ์ธํด์ ํ ๋นํด์ฃผ๊ณ , return ์์ ๋ฃ์ด์ฃผ์์ต๋๋ค.
๐ ์๋ชป๋ ๊ฐ๋ ์ ๋ฌ์ด ์๋ค๋ฉด ๋๊ธ ๋ถํ๋๋ฆฝ๋๋ค. ์ ์ ์ฑ์ฅ์ ํฐ ๋์์ด ๋ฉ๋๋ค๐ค
๋ฐ์ํ
'๐Language > JavaScript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[#JS 30 challenge] Day 1. Drum kit ๋ฐฐ์ด ์ (0) | 2022.08.12 |
---|---|
์๋ฐ์คํฌ๋ฆฝํธ, if๋ฌธ๊ณผ switch ๊ตฌ๋ฌธ ๋น๊ตํ๊ธฐ (0) | 2022.07.20 |
find(), findIndex(), Object.entries() (0) | 2022.07.07 |
TIL) ๊ฐ์ฒด ๊ตฌ์กฐ ๋ถํด ์ถ๊ฐ ํ์ต (0) | 2022.07.02 |
JSON, ๊ฐ์ฒด๋ฅผ ์ค๋ฅ์์ด ๋ฌธ์์ด๋ก ๋ณํํ๊ธฐ, [object Object] ๋์ค๋ ์ด์ , JSON์ ์ฌ์ฉ๋ฐฉ๋ฒ (0) | 2022.06.24 |