Sample code for 30+ languages & platforms
PowerShell Requires Chilkat v11.0.0+

Sort JSON Object by Member Key Name

See more JSON Examples

Demonstrates how to sort the members of a JSON object by the key name.

Chilkat PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$json = New-Object Chilkat.JsonObject

$json.UpdateString("xyz","1234")
$json.UpdateString("abc.xyz","1234")
$json.UpdateString("abc.def","1234")
$json.UpdateString("abc.aaa","1234")
$json.UpdateString("ghi","1234")
$json.UpdateString("nmo","1234")

$json.EmitCompact = $false
$($json.Emit())

#  This is our initial JSON:

#  {
#    "xyz": "1234",
#    "abc": {
#      "xyz": "1234",
#      "def": "1234",
#      "aaa": "1234"
#    },
#    "ghi": "1234",
#    "nmo": "1234"
#  }

#  Sort the top-level JSON object by key.
$ascending = $true
$caseSensitive = $true
$json.Sort($ascending,$caseSensitive)

#  Look at the sorted JSON..
$($json.Emit())

#  {
#    "abc": {
#      "xyz": "1234",
#      "def": "1234",
#      "aaa": "1234"
#    },
#    "ghi": "1234",
#    "nmo": "1234",
#    "xyz": "1234"
#  }

#  Now sort the members of the "abc" object..
$jsonAbc = New-Object Chilkat.JsonObject
$json.ObjectOf2("abc",$jsonAbc)

$jsonAbc.Sort($ascending,$caseSensitive)

#  Now look at the JSON with the members under "abc" also sorted..
$($json.Emit())

#  {
#    "abc": {
#      "aaa": "1234",
#      "def": "1234",
#      "xyz": "1234"
#    },
#    "ghi": "1234",
#    "nmo": "1234",
#    "xyz": "1234"
#  }