๐Language/JavaScript
๋ฐฐ์ด ์ ๊ฐ์ฒด ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ฆฌํ๊ธฐ
hellohailie
2022. 7. 12. 17:08
๋ฐ์ํ
ํ ์ด ํ๋ก์ ํธ์์ ๋๋ฏธ ๋ฐ์ดํธ๋ฅผ ์์ฑํ์ต๋๋ค.
๋๋ฏธ๋ฐ์ดํฐ๋ ๋ฐฐ์ด ์์ ๊ฐ์ฒด์ ๋์ด๋ก ๋ง๋ค์์ต๋๋ค.
์ง๊ธ์ 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 ์์ ๋ฃ์ด์ฃผ์์ต๋๋ค.
๐ ์๋ชป๋ ๊ฐ๋ ์ ๋ฌ์ด ์๋ค๋ฉด ๋๊ธ ๋ถํ๋๋ฆฝ๋๋ค. ์ ์ ์ฑ์ฅ์ ํฐ ๋์์ด ๋ฉ๋๋ค๐ค
๋ฐ์ํ