题解 | #倒计时#
倒计时
https://www.nowcoder.com/practice/d86defce50ea45dd92c7a4fbde17d64b
思路:首先将秒数second转换为day、hour、min、sec字段并以对象形式返回,注意,js中的/不是整除,其会带小数,故需要使用parseInt函数将其转换为整数,注意,牛客测例使用的字段是second,而我函数中为了区分参数second使用的是sec,在ES6中如果对象的key和value相同那么就可以简写即只写一个,此处只要second不能简写。可以遍历data,通过判断其是否大于9来对其补齐0,再获取div,并设置其children对应的内容。
<body> <div id="jsCountdown"> <span>01天</span> <span>02:</span> <span>03:</span> <span>04</span> </div> <script type="text/javascript"> function second(second) { //js的/不是整除喔 var day = parseInt(second/60/60/24) var hour = parseInt((second/60/60)%24) var min = parseInt((second/60)%60) var sec = parseInt(second%60) // 注意 测例是second字段 return {day,hour,min,'second':sec} } function render(data) { for(var i in data) { data[i] = data[i]>9?data[i]:'0'+data[i] } var div = document.getElementById('jsCountdown') if(data.day==='00') div.children[0].classList.add('hide') else div.children[0].innerHTML = data.day + '天' div.children[1].innerHTML = data.hour + ':' div.children[2].innerHTML = data.min + ':' div.children[3].innerHTML = data.second } </script> </body>
总结:classList是获取元素的class属性集合,可以用于在元素中添加(add)、移除(remove)以及切换(toggle) 类class。可以使用children来获取该元素的子元素。
#倒计时阶段#前端js面试 文章被收录于专栏
前端js面试,帮助你更好的理解js。