对包含数字的 JavaScript 字符串数组进行排序

2024-02-05

我有一个 JavaScript 数组,其中包含以下内容:

  • [“值 1”,“值 5”。 “值10”,“值11”];

我将如何对该数组进行排序,使其不会出现如下所示:

  • [“值 1”,“值 10”。 “值11”,“值5”];

But as:

  • [“值 1”,“值 5”。 “值10”,“值11”];

任何帮助都会很棒。


您需要从字符串中提取数值并根据这些值进行排序,就像 vlood 所说的那样。例如,尝试以下代码:

function mySort(arr)
{
    var regex = /Value\s([0-9]+)/;

    function map(str) {
        return Number(regex.exec(str)[1]);
    }

    return arr
    .sort(
        function (a,b) {
            var av = map(a), bv = map(b);
            return av < bv ? -1 : av > bv ? 1 : 0;
        })
}

mySort(["Value 1", "Value 10", "Value 11", "Value 5"]);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对包含数字的 JavaScript 字符串数组进行排序 的相关文章