javascript - 使用 underscore.js 对数组升序排序

标签 javascript underscore.js lodash

我需要使用 underscore.js 对数组进行升序排序。它几乎对我有用,但是当 排序名称包含大写字母,大写字母名称按排序顺序排在前面。你能帮我解决这个问题吗?塔汉克你。

尝试以下

connectors = [
    {
    "name": "ajax"
    },
    {
    "name": "jquery"
    },
    {
    "name": "FGJDE"
    }
]
sorted = _.sortBy(connectors, 'name');

预期输出

connectors = [
    {
    "name": "ajax"
    },
    {
    "name": "FGJDE"
    },
    {
    "name": "jquery"
    }
]

排序错误,如下所示

connectors = [
    {
    "name": "FGJDE"
    },
    {
    "name": "ajax"
    },
    {
    "name": "jquery"
    }
]

最佳答案

你可以这样做

connectors = [{
  "name": "ajax"
}, {
  "name": "jquery"
}, {
  "name": "FGJDE"
}]
sorted = _.sortBy(connectors, function (text) { return text.name.toLowerCase(); });
console.log(sorted);

这是jsFiddle

关于javascript - 使用 underscore.js 对数组升序排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38564691/

相关文章:

javascript - 如何在 node.js 中包含默认模型作为引用名称?

javascript - 从集合中删除带有下划线的元素

javascript - 为什么setInterval添加的函数停止执行?

Javascript 字符串模板慢 vs knockoutjs 模板

javascript - 如何使用 lodash 获取对象的前 n 个元素?

javascript - ECMASCRIPT6 Google 跟踪代码管理器错误 : Arrow function

javascript - 在底层图像加载后平滑地动画背景颜色不透明度

javascript - 使用 Lodash 节流不起作用

javascript - 在没有 Controller 的情况下将所有 Angular 值相加

javascript - Lodash 过滤/Javascript 中两个对象数组的交集