javaScript open API로 불러온 데이터 table에서, 숫자로 이루어진 열의 상위 값 5개와 하위 값 5개의 컬러를 바꿔보자.
const indexColumn = document.querySelectorAll(".index");
const numbers = Array.from(indexColumn, (td) => Number(td.textContent));
const top5 = numbers.sort((a, b) => b - a).slice(0, 5);
const bottom5 = numbers.sort((a, b) => a - b).slice(0, 5);
indexColumn.forEach((td) => {
if (top5.includes(Number(td.textContent))) {
td.style.color = "blue";
td.style.fontWeight = "bold";
} else if (bottom5.includes(Number(td.textContent))) {
td.style.color = "red";
td.style.fontWeight = "bold";
}
});
React JS로 이미 꽤 여러번 팀 프로젝트를 진행해왔지만, 바닐라 자바스크립트에 대한 기초 지식이 부족하다고 느꼈다. 해당 목표를 수행하기 위해 fetch, json(), innerHTML, innerText, textContent, hasOwnProperty, Array.from(), sort, slice, includes, forEach, Number 등 정말 다양한 객체와 그 method를 이해 및 응용할 수 있었다.
mdn web docs를 참조하면서, 위 작성한 것 외에도 정말 다양한 자바스크립트 내장 method가 있다고 느꼈다. 자주 사용하는 method 외에도, 필요한 기능이 있을 때 이 method를 사용하면 되겠구나 할 수 있을 정도의 지식을 갖추는 것이 필요하다고 생각했다.