javascript - 如何在自定义JQuery中添加日期原始/后缀?

标签 javascript string date var suffix

我有以下旨在修改日期格式的Javascript,但是我想添加原始日期或后缀,例如“st”,“nd”,“rd”,“th”到每个结束日期编号。例如,假设我们当前的日期设置为 4 月 28 日,但我想将日期显示为 4 月 28 日

因此,如果有可能...您如何将此示例编码添加到当前的 javascript 字符串中?

var nth = function(d) {   if (d > 3 && d < 21) return 'th';   switch (d % 10) {
    case 1:  return "st";
    case 2:  return "nd";
    case 3:  return "rd";
    default: return "th";   } }

当前 JS:

  // Blog date
    window.addEventListener('DOMContentLoaded', function () {
    document.querySelectorAll('.waddons-blog-meta').forEach(el => el.textContent = formatDateString(el.textContent))
    }, false);
    function formatDateString(s) {
      var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
      var arr = s.split('/');
      return arr[1] + " " + months[arr[0] - 1];

      }

当前 HTML:

<div class="waddons-blog-meta">3/7/2020 - </div>

最佳答案

您只需在代码中调用nth 函数即可。

var nth = function (d) {
      if (d > 3 && d < 21) return 'th'; switch (d % 10) {
        case 1: return "st";
        case 2: return "nd";
        case 3: return "rd";
        default: return "th";
      }
    }

window.addEventListener('DOMContentLoaded', function () {
  document.querySelectorAll('.waddons-blog-meta').forEach(el => el.textContent = formatDateString(el.textContent))
}, false);
function formatDateString(s) {
  var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
  var arr = s.split('/');
  return arr[1] + nth(arr[1]) + " " + months[arr[0] - 1];
}

如果您想为第 th 值添加上标,请使用以下代码

window.addEventListener('DOMContentLoaded', function () {
  document.querySelectorAll('.waddons-blog-meta').forEach(el => el.innerHTML = formatDateString(el.textContent))
}, false);
function formatDateString(s) {
  var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
  var arr = s.split('/');
  return arr[1] + "<sup>" + nth(arr[1]) + "</sup>" + " " + months[arr[0] - 1];
}

关于javascript - 如何在自定义JQuery中添加日期原始/后缀?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61474907/

相关文章:

javascript - Javascript 中字符串逻辑运算符的用途

python - 如何在python中对日期进行排序?

javascript - 如何从 JavaScript 对象中删除键和值

c++ - c 套接字以字符串形式发送命令

javascript - 变量说明

c# - 帮助对 C# 中的文本字符串进行正则表达式验证

Javascript: `new Date(dateString)` 与 `new Date(year, month, day)` 之间的区别

javascript - 格式日期为 "yyyy-MM-dd' T'HH :mm:ss. SSS'Z'"

javascript - Web开发

javascript - 提交表单 onload 不起作用