数字转序数后缀

JavaScriptJavaScriptBeginner
立即练习

This tutorial is from open-source community. Access the source code

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在这个实验中,我们将探究一个 JavaScript 函数,该函数接收一个数字,并将其作为带有正确序数指示后缀的字符串返回。该函数将使用取模运算符来找到个位数和十位数的值,然后确定数字与哪种序数模式匹配。我们还将处理十几(teens)模式数字的特殊情况,并为这些数字使用适当的序数。

将数字转换为序数后缀的函数

要将数字转换为序数后缀,请使用 toOrdinalSuffix 函数。

  • 打开终端/SSH 并输入 node 以开始练习编码。
  • 该函数接受一个数字作为输入,并将其作为带有正确序数指示后缀的字符串返回。
  • 使用取模运算符(%)来找到个位数和十位数的值。
  • 找出与哪种序数模式匹配的数字。
  • 如果数字在十几(teens)模式中找到,则使用十几(teens)的序数。
const toOrdinalSuffix = (num) => {
  const int = parseInt(num),
    digits = [int % 10, int % 100],
    ordinals = ["st", "nd", "rd", "th"],
    oPattern = [1, 2, 3, 4],
    tPattern = [11, 12, 13, 14, 15, 16, 17, 18, 19];
  return oPattern.includes(digits[0]) && !tPattern.includes(digits[1])
    ? int + ordinals[digits[0] - 1]
    : int + ordinals[3];
};

以下是使用 toOrdinalSuffix 函数的示例:

toOrdinalSuffix("123"); // '123rd'

总结

恭喜你!你已经完成了“数字转序数后缀”实验。你可以在 LabEx 中练习更多实验来提升你的技能。