Javascript获取英语计数
我想要一个函数,它接受一个数字并返回一个英文计数,例如: 第三名返回第三名 我的工作解决方案:Javascript获取英语计数,javascript,algorithm,count,Javascript,Algorithm,Count,我想要一个函数,它接受一个数字并返回一个英文计数,例如: 第三名返回第三名 我的工作解决方案: function GetEnglishCount(number) { if ((number % 10 == 1) && (number % 100 != 11)) { return number + "st"; } else if ((number % 10 == 2) && (number % 100 != 12)) {
function GetEnglishCount(number) {
if ((number % 10 == 1) && (number % 100 != 11)) {
return number + "st";
}
else if ((number % 10 == 2) && (number % 100 != 12)) {
return number + "nd";
}
else if ((number % 10 == 3) && (number % 100 != 13)) {
return number + "rd";
}
else {
return number + "th";
}
}
有没有更优雅/准确的方法来实现这一点?您可以跳过else链接,因为return结束函数并删除一些括号
function GetEnglishCount(number) {
if (number % 10 === 1 && number % 100 !== 11) {
return number + "st";
}
if (number % 10 === 2 && number % 100 !== 12) {
return number + "nd";
}
if (number % 10 === 3 && number % 100 !== 13) {
return number + "rd";
}
return number + "th";
}
这是写它的一种方式:
function GetEnglishCount(number) {
if([11,12,13].indexOf(number%100)+1)
return 'th'
switch(number%10){
case 1: return 'st'
case 2: return 'nd'
case 3: return 'rd'
}
return 'th'
}
另请参见此代码的具体问题是什么?你称之为有效的解决方案,但你仍然要求一个更准确的解决方案。有一个解决方案可以回答你的问题吗?