练习作业1.html 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. </head>
  8. <body>
  9. <ul id="box">
  10. <!-- <li>2025年1月19日</li> -->
  11. </ul>
  12. <script>
  13. /*
  14. 题目:使用 HTML 和 JavaScript 使用 map 方法将数组中的每个月份变为正常的月数,并将结果显示在页面上。
  15. 其中月份为默认值是0-11,需要转换为正常月份。
  16. 要求:
  17. 使用js在 HTML 中创建<li> 元素,用于显示结果。
  18. 要求页面显示样式为:xxxx年xx月xx日。
  19. 使用 JavaScript 的 map 方法对数组进行操作。
  20. 可用 css/js 为列表项添加样式,如设置字体大小、颜色等。
  21. */
  22. let arr = ["2025-1-1", "2025-2-1", "2025-3-1", "2025-4-1", "2025-5-1", "2025-6-1", "2025-7-1", "2025-8-1", "2025-9-1", "2025-10-1", "2025-11-1", "2025-0-1"];
  23. //格式化数据
  24. function formatData(str) {
  25. // 2025-1-1 将字符型的日期分割成数组
  26. let resDate = str.split("-");
  27. let year = resDate[0];
  28. let month = Number.parseInt(resDate[1])+1;
  29. let day = resDate[2];
  30. let dateStr = `${year}年${month}月${day}日`;
  31. return dateStr;
  32. // 2025年2月1日
  33. }
  34. //将格式化后的数据添加到新数组中
  35. let resArr = arr.map(function (item) {
  36. return formatData(item);
  37. });
  38. // 将新格式化后的数据添加到页面中
  39. let oBox = document.getElementById("box");
  40. resArr.forEach(function (item, index) {
  41. let oLi = document.createElement("li");
  42. oLi.innerText = item;
  43. oBox.appendChild(oLi);
  44. });
  45. </script>
  46. </body>
  47. </html>