当前位置:首页 > JavaScript

js实现查找到序数

2026-01-31 07:46:09JavaScript

查找序数的实现方法

在JavaScript中查找序数(ordinal numbers)通常涉及将数字转换为对应的序数形式,例如1变为"1st",2变为"2nd",3变为"3rd"等。以下是几种实现方法:

js实现查找到序数

使用条件判断

通过判断数字的最后一位或最后两位来确定序数后缀:

js实现查找到序数

function getOrdinal(num) {
    const j = num % 10;
    const k = num % 100;
    if (j === 1 && k !== 11) {
        return num + "st";
    }
    if (j === 2 && k !== 12) {
        return num + "nd";
    }
    if (j === 3 && k !== 13) {
        return num + "rd";
    }
    return num + "th";
}

使用数组映射

预定义后缀规则并通过数组查找:

function getOrdinal(num) {
    const suffixes = ["th", "st", "nd", "rd"];
    const v = num % 100;
    return num + (suffixes[(v - 20) % 10] || suffixes[v] || suffixes[0]);
}

国际化API(Intl.PluralRules)

利用现代JavaScript的国际化API:

function getOrdinal(num) {
    const rules = new Intl.PluralRules('en', { type: 'ordinal' });
    const suffix = {
        one: 'st',
        two: 'nd',
        few: 'rd',
        other: 'th'
    }[rules.select(num)];
    return num + suffix;
}

注意事项

  • 处理负数时需要先取绝对值。
  • 边界情况(如0、小数)需要单独处理。
  • 不同语言地区的序数规则可能不同,需根据实际需求调整。

标签: 序数js
分享给朋友:

相关文章

js实现分页

js实现分页

实现分页的基本思路 分页功能通常需要处理数据分割、页码生成和用户交互。核心逻辑包括计算总页数、根据当前页截取数据、渲染页码按钮等。 前端分页实现(静态数据) 假设已有全部数据,仅需前端分页展示:…

js实现倒计时

js实现倒计时

使用 setInterval 实现倒计时 通过 setInterval 定时器每秒更新剩余时间,适用于简单倒计时场景。 function countdown(seconds, callbac…

js实现验证码

js实现验证码

使用Canvas生成图形验证码 在HTML中创建一个Canvas元素用于绘制验证码。通过JavaScript随机生成数字或字母组合,并添加干扰线、噪点等干扰元素增强安全性。 <canvas…

js实现继承

js实现继承

原型链继承 通过将子类的原型指向父类的实例实现继承。子类实例可以访问父类原型上的属性和方法。 function Parent() { this.name = 'parent'; } Paren…

js实现复制功能

js实现复制功能

使用 document.execCommand 方法 这种方法适用于较旧的浏览器,但在现代浏览器中可能被逐步淘汰。通过创建一个临时的 textarea 元素,将文本内容放入其中,然后执行复制命令。…

js实现验证

js实现验证

验证表单输入 使用JavaScript验证表单输入是常见的需求。可以通过监听表单提交事件,检查输入字段是否符合要求。 document.getElementById('myForm').addEv…