JavaScript中向数字添加后缀


问题

我们需要编写一个 JavaScript 函数,它采用一个数字 num 作为第一个也是唯一一个参数。

我们的函数的任务是根据以下规则将“st”、“nd”、“rd”、“th”附加到数字

  • st 用于以 1 结尾的数字(例如 1st,读作 first)
  • nd 用于以 2 结尾的数字(例如 92nd,读作 ninety-second)
  • rd 用于以 3 结尾的数字(例如 33rd,读作 thirty-third)
  • 作为上述规则的例外,所有以 11、12 或 13 结尾的“teen”数字都使用 - th(例如 11th,读作 eleventh,112th,读作 one hundred [and] twelfth)
  • th 用于所有其他数字(例如 9th,读作 ninth)。

例如,如果输入函数的是 -

输入

const num = 4513;

输出

const output = '4513th';

输出说明

即使以 4513 结尾,13 也是必须附加 th 的特例

示例

以下是代码 -

 实际演示

const num = 4513;
const appendText = (num = 1) => {
   let suffix = "th";
   if (num == 0) suffix = "";
   if (num % 10 == 1 && num % 100 != 11) suffix = "st";
   if (num % 10 == 2 && num % 100 != 12) suffix = "nd";
   if (num % 10 == 3 && num % 100 != 13) suffix = "rd";

   return num + suffix;
};
console.log(appendText(num));

输出

4513th

更新于:2021 年 4 月 22 日

926 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始
广告
© . All rights reserved.