gpt4 book ai didi

javascript - 如何获取 '1.2.5.4' 和 '1.2.5.3' 等字符串的最大值?

转载 作者:行者123 更新时间:2023-11-29 10:50:47 25 4
gpt4 key购买 nike

我有一个数组,其中的字符串由点分符号中的数字组成:

var arr = ['1.2.5.4', '1.2.5.3'];

我希望能够找到表示最高值的字符串。

我已经试过了

Math.max.apply(null, arr)

因为有多个小数点,所以根本行不通。

最佳答案

这似乎是一个更简单的解决方案:

function latest (versions) {
versions.sort (function (a, b) {
a = a.split ('.');
b = b.split ('.');
for (var i = 0; i < a.length && i < b.length && a[i] === b[i]; i++);
return ((i === a.length) || (+a[i] < +b[i])) ? 1 : -1;
});
return versions[0];
}

[
latest (['1.2.5.4', '1.3.5.3', '1.2.3.4.5', '1.24.2.1', '1.2.52']),
latest (['1.2.5.4', '1.3.5.3', '1.2.3.4.5', '1.2.52']),
latest (['1.2.5.4', '1.2.3.4.5', '1.2.52']),
latest (['1.2.5.4', '1.2.3.4.5'])
]

/* Displays on JS console

["1.24.2.1", "1.3.5.3", "1.2.52", "1.2.5.4"]
*/

感谢您的投票,在审查时我注意到了一个错误,我已在上面的代码中更正了该错误。

关于javascript - 如何获取 '1.2.5.4' 和 '1.2.5.3' 等字符串的最大值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10607582/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com