반응형
18일차
<script>
const timeNodes = Array.from(document.querySelectorAll('[data-time]'));
const seconds = timeNodes
.map(node => node.dataset.time)
.map(timeCode => {
const [mins, secs] = timeCode.split(':').map(parseFloat);
return (mins * 60) + secs;
})
.reduce((total, vidSeconds) => total + vidSeconds);
let secondsLeft = seconds;
const hours = Math.floor(secondsLeft / 3600);
secondsLeft = secondsLeft % 3600;
const mins = Math.floor(secondsLeft / 60);
secondsLeft = secondsLeft % 60;
console.log(hours, mins, secondsLeft);
</script>
reduce와 map을 통해 동영상의 모든 시간을 다 합쳐서 나타내는 코드였다.
반응형
'챌린지 > JavaScript 30일 챌린지' 카테고리의 다른 글
[JavaScript 30일 챌린지] : 20일차 (0) | 2022.02.16 |
---|---|
[JavaScript 30일 챌린지] : 19일차 (0) | 2022.02.15 |
[JavaScript 30일 챌린지] : 17일차 (0) | 2022.02.13 |
[JavaScript 30일 챌린지] : 16일차 (0) | 2022.02.12 |
[JavaScript 30일 챌린지] : 15일차 (0) | 2022.02.11 |
댓글