«

»

Aug 29

Print this Post

Como indexar (sort) uma estrutura?

Use a função structSort() interna do ColdFusion.

<cfscript>
     foo = structNew();
     StructInsert(foo, "a", "this");
     StructInsert(foo, "b", "is");
     StructInsert(foo, "c", "a");
     StructInsert(foo, "d", "test"); 
</cfscript>

StructSort() retorna uma array do nomes chaves (strings) do nível de tôpo.

<cfoutput>#arrayToList(structSort(foo))#</cfoutput>

Voce tambem pode indexar estruturas parentes baseado nas suas crianças. Por exemplo, o código abaixo indexará todas as pessoas em foo pela suas idades:

<cfset foo = structNew()>
<cfset foo.raymond = structNew()>
<cfset foo.raymond.age =9>
<cfset foo.raymond.lastname = "Camden">
<cfset foo.jeremy = structNew()>
<cfset foo.jeremy.age =10>
<cfset foo.jeremy.lastname = "Petersen">
<cfset foo.joe = structNew()>
<cfset foo.joe.age =12>
<cfset foo.joe.lastname = "Test">
<cfoutput>#arrayToList(structSort(foo, "numeric", "asc", "age"))#</cfoutput>

by Jeremy Petersen

Permanent link to this article: https://ensina.me/coldfusion/como-indexar-sort-uma-estrutura/

Leave a Reply