如果我们想要获得最大值或最小值,我们会使用Math.max
或Math.min
。我想知道是否有办法获得最高的字母。
例如;
var i = 'A';
var ii = 'B';
var iii = 'C';
result = getthemax(i , ii, iii);
// so result equels to 'C'
我经常搜索但找不到这样的东西。有没有办法做到这一点?
答案 0 :(得分:3)
你可以简单地将它们放在一个数组中,然后使用Array.sort()
然后.pop()
数组中的最后一项:
var i = 'A';
var ii = 'B';
var iii = 'C';
var highestLetter = [i, ii, iii].sort().pop(); //will now be "C".
执行此操作的功能是:
function getthemax() {
return Array.prototype.pop.call(Array.prototype.sort.call(arguments));
}
getthemax(i, ii, iii); //"C"
答案 1 :(得分:0)
另一种解决方案,但不是我认为最好的解决方案,就是使用ASCII字符。
一个简单的例子:
var i = 'A';
var ii = 'B';
var iii = 'C';
var r = Math.max(i.charCodeAt(0), ii.charCodeAt(0), iii.charCodeAt(0))
var biggest = String.fromCharCode(r);
答案 2 :(得分:-1)
您可以使用:
var i1 = i.charCodeAt();
var ii1 = ii.charCodeAt();
var iii1 = iii.charCodeAt();
result = Math.max(i1, ii1, iii1);