javascript - 尝试将对象数组按降序排序到一个键(名称),并希望带有大写字母的数据首先出现在 vuejs
问题描述
我正在尝试参考键(名称)对对象数组进行排序,并且我希望首先显示带有大写字母的数据,但它首先返回带有小写字母的数据。我正在使用 lodash 方法, orderby 检索到的数组是:
data = [
{
"id":"00000000-0000-0000-0000-000000100000",
"name":"DAS_Name_1",
"layer":"Raw",
"securityClass":"Green",
"domainName":null,
"domainId":null,
"isActive":true,
"isLocked":true,
"creationDate":"2019-10-09T23:12:34Z",
"createdByName":"DAS_Actor_User_Name_1",
"createdById":"User_Id_1"
},
{
"id":"00000000-0000-0000-0000-000000100009",
"name":"u_123",
"layer":"Standardized",
"securityClass":"Green",
"domainName":null,
"domainId":null,
"isActive":true,
"isLocked":true,
"creationDate":"2019-10-09T23:12:34Z",
"createdByName":"DAS_Actor_User_Name_10",
"createdById":"User_Id_10"
},
{
"id":"00000000-0000-0000-0000-000000100099",
"name":"Velvetica-123",
"layer":"Standardized",
"securityClass":"Red",
"domainName":null,
"domainId":null,
"isActive":false,
"isLocked":true,
"creationDate":"2019-10-09T23:12:34Z",
"createdByName":"DAS_Actor_User_Name_20",
"createdById":"User_Id_20"
},
{
"id":"00000000-0000-0000-0000-000000100100",
"name":"test_run-2",
"layer":"Data_Products",
"securityClass":"Green",
"domainName":null,
"domainId":null,
"isActive":true,
"isLocked":true,
"creationDate":"2019-10-09T23:12:34Z",
"createdByName":"DAS_Actor_User_Name_1",
"createdById":"User_Id_1"
}
]
当我使用 lodash 方法对数据数组进行排序时:
data = _.orderBy(data, ["name"], ["desc"]);
但我得到的结果如下:
data = [
{
"id":"00000000-0000-0000-0000-000000100000",
"name":"test_run-2",
"layer":"Raw",
"securityClass":"Green",
"domainName":null,
"domainId":null,
"isActive":true,
"isLocked":true,
"creationDate":"2019-10-09T23:12:34Z",
"createdByName":"DAS_Actor_User_Name_1",
"createdById":"User_Id_1"
},
{
"id":"00000000-0000-0000-0000-000000100009",
"name":"u_123 ",
"layer":"Standardized",
"securityClass":"Green",
"domainName":null,
"domainId":null,
"isActive":true,
"isLocked":true,
"creationDate":"2019-10-09T23:12:34Z",
"createdByName":"DAS_Actor_User_Name_10",
"createdById":"User_Id_10"
},
{
"id":"00000000-0000-0000-0000-000000100099",
"name":"Velvetica-123",
"layer":"Standardized",
"securityClass":"Red",
"domainName":null,
"domainId":null,
"isActive":false,
"isLocked":true,
"creationDate":"2019-10-09T23:12:34Z",
"createdByName":"DAS_Actor_User_Name_20",
"createdById":"User_Id_20"
},
{
"id":"00000000-0000-0000-0000-000000100100",
"name":"DAS_Name_1 ",
"layer":"Data_Products",
"securityClass":"Green",
"domainName":null,
"domainId":null,
"isActive":true,
"isLocked":true,
"creationDate":"2019-10-09T23:12:34Z",
"createdByName":"DAS_Actor_User_Name_1",
"createdById":"User_Id_1"
}
]
这是不正确的。有人可以建议在这里做什么吗?
解决方案
一个简单的升序排序会处理它。
因为“A”的 ASCII 值是 65,而“a”的 ASCII 值是 97。
因此,一个简单的升序排序将能够将所有 Capitalized 值合并到数组的顶部。
在这里试过
希望这可以帮助!
推荐阅读
- python - 如何在 wagtail 页面中发送额外的上下文
- linux - 使用 grep 移动具有特定扩展名的文件
- git - Git push to origin/feature 错误可能是由于 rebase-reassigned 提交 SHA
- python - 服务器迁移后奇怪的python脚本错误
- solr - PorterStemFilterFactory 不返回结果
- java - 该代码正在删除整个文件,而不是在 Java 中修改我想要的行
- c# - 简单地将 Entity Framework Core 添加到基本的 Azure 函数应用程序会导致错误
- java - 如何在没有业务逻辑中断的情况下处理 Java InterruptedException?
- python - 如何获取文本文件中两行之间的数据?
- python - CMakeLists.txt:994 处的 CMake 错误(add_subdirectory)