StructSort

Returns a sorted array of the top level keys in a structure. Sorts using alphabetic or numeric sorting, and can sort based on the values of any structure element.

StructSort( base [, sortType [, sortOrder [, pathToSubElement ] ] ] )

Returns: Array

Argument Description Default
base
struct, required

A structure with one field (an associative array).

sortType
string, optional

define one of the following:

  • numeric: sorts numbers
  • text: sorts text alphabetically, taking case into account (case sensitive)
  • textnocase: sorts text alphabetically, without regard to case (case insensitive)

text

sortOrder
string, optional

sort direction:

  • asc (default): ascending (a to z) sort order
  • desc: descending (z to a) sort order

asc

pathToSubElement
string, optional

String or a variable that contains one

Examples

Member Function

animals = {
	cow: {
		total: 12
	},
	pig: {
		total: 5
	},
	cat: {
		total: 3
	}
};
// Show current animals
Dump(
	label: "Current animals",
	var: animals
);
// Show animals sorted by total
Dump(
	label: "Animals sorted by total",
	var: animals.sort("numeric", "asc", "total")
);

Non-Member Function

animals = {
	cow: {
		total: 12
	},
	pig: {
		total: 5
	},
	cat: {
		total: 3
	}
};
// Show current animals
Dump(
	label: "Current animals",
	var: animals
);
// Show animals sorted by total
Dump(
	label: "Animals sorted by total",
	var: StructSort(animals, "numeric", "asc", "total")
);

See also