I have an associative array that I need to sort in a particular order. Each object has a description key. Here is the current array I want to rearrange.
[{
id: "1",
permission: "Administer Source List",
description: "Data Source",
OrgAdmin: "*",
DataAdmin: "*",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "2",
permission: "Administer Common Layers",
description: "Data Source",
OrgAdmin: "*",
DataAdmin: "*",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "7",
permission: "Create Campaigns",
description: "Campaigns",
OrgAdmin: "*",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "8",
permission: "Access/modify campaign setup",
description: "Campaigns",
OrgAdmin: "*",
DataAdmin: "",
SetupAdmin: "*",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "11",
permission: "View Reports",
description: "Reports",
OrgAdmin: "*",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "*",
APTUser: "",
UserAdmin: ""
},
{
id: "12",
permission: "Modify prebuilt reports",
description: "Reports",
OrgAdmin: "*",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "16",
permission: "Create portfolio",
description: "APT",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "17",
permission: "Access all portfolios (at org)",
description: "APT",
OrgAdmin: "*",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "*",
UserAdmin: ""
},
{
id: "20",
permission: "Administer role templates for org",
description: "Manage Users",
OrgAdmin: "*",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "21",
permission: "Add/edit/delete non org-admin users at org",
description: "Manage Users",
OrgAdmin: "*",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: "*"
},
{
id: "25",
permission: "Administer organizations & survey programs",
description: "ABC Admin functions",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "26",
permission: "Administer all users in system",
description: "ABC Admin functions",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
permission: "Data Source",
description: "Data Source",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
permission: "Campaigns",
description: "Campaigns",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
permission: "Reports",
description: "Reports",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
permission: "APT",
description: "APT",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
permission: "Manage Users",
description: "Manage Users",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
permission: "ABC Admin functions",
description: "ABC Admin functions",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
}
];
I want to resort the array to be like this:
[{
permission: "Data Source",
description: "Data Source",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "1",
permission: "Administer Source List",
description: "Data Source",
OrgAdmin: "*",
DataAdmin: "*",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "2",
permission: "Administer Common Layers",
description: "Data Source",
OrgAdmin: "*",
DataAdmin: "*",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
permission: "Campaigns",
description: "Campaigns",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "7",
permission: "Create Campaigns",
description: "Campaigns",
OrgAdmin: "*",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "8",
permission: "Access/modify campaign setup",
description: "Campaigns",
OrgAdmin: "*",
DataAdmin: "",
SetupAdmin: "*",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
permission: "Reports",
description: "Reports",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "11",
permission: "View Reports",
description: "Reports",
OrgAdmin: "*",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "*",
APTUser: "",
UserAdmin: ""
},
{
id: "12",
permission: "Modify prebuilt reports",
description: "Reports",
OrgAdmin: "*",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
permission: "APT",
description: "APT",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "16",
permission: "Create portfolio",
description: "APT",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "17",
permission: "Access all portfolios (at org)",
description: "APT",
OrgAdmin: "*",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "*",
UserAdmin: ""
},
{
permission: "Manage Users",
description: "Manage Users",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "20",
permission: "Administer role templates for org",
description: "Manage Users",
OrgAdmin: "*",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "21",
permission: "Add/edit/delete non org-admin users at org",
description: "Manage Users",
OrgAdmin: "*",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: "*"
},
{
permission: "ABC Admin functions",
description: "ABC Admin functions",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "25",
permission: "Administer organizations & survey programs",
description: "ABC Admin functions",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
},
{
id: "26",
permission: "Administer all users in system",
description: "ABC Admin functions",
OrgAdmin: "",
DataAdmin: "",
SetupAdmin: "",
DataConsumer: "",
APTUser: "",
UserAdmin: ""
}
];
Is there away I can use the description key to make this happen?