Este é o site histórico da documentação 4D. As documentações estão sendo movidas progressivamente para developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19.8
collection.find( )
|
collection.find ( {posInic ;} nomeMet {; param {; param2 ; ... ; paramN}} ) -> Resultado | ||||||||
Parâmetro | Tipo | Descrição | ||||||
posInic | Inteiro longo |
![]() |
Número do elemento de início da pesquisa | |||||
nomeMet | Texto |
![]() |
Nome da função a chamar | |||||
param | Expression |
![]() |
Parâmetro a passar ao nomeMet | |||||
Resultado |
![]() |
Primeiro valor encontrado, ou Undefined se não for encontrado | ||||||
O método collection.find( ) devolve o primeiro valor na coleção para o qual nomMet, aplicado em cada elemento, devolve true.
Nota: este método não modificar a coleção original.
De forma pré-determinada, collection.find( ) busca em toda a coleção. Opcionalmente, pode passar em posicIni o índice do elemento desde o qual começar a pesquisa.
Em nomMet, passe o nome do método a usar para avaliar os elementos da coleção, junto com seus parâmetros em param (opcional). nomMet pode realizar qualquer teste, com ou sem os parâmetros. Este método recebe um parâmetro Object em $1 e deve definir $1.result como true para o primeiro elemento que cumpra a condição.
nomMet recebe os parâmetros abaixo:
nomMet define os parâmetros abaixo:
Se quiser obter o primeiro elemento com uma longitude inferior a 5:
C_COLLECTION($col)
$col:=New collection("hello";"world";4;"red horse";"tim";"san jose")
$value:=$col.find("LengthLessThan";5) //$value="tim"
O código para o método LengthLessThan é:
C_OBJECT($1)
C_LONGINT($2)
If(Value type($1.value)=Is text)
$1.result:=(Length($1.value))<$2
End if
Se quiser encontrar o nome de uma cidade dentro de uma coleção:
C_COLLECTION($c)
$c:=New collection
$c.push(New object("name";"Cleveland";"zc";35049))
$c.push(New object("name";"Blountsville";"zc";35031))
$c.push(New object("name";"Adger";"zc";35006))
$c.push(New object("name";"Clanton";"zc";35046))
$c.push(New object("name";"Clanton";"zc";35045))
$c2:=$c.find("FindCity";"Clanton") //$c2={name:Clanton,zc:35046}
O código para o método é FindCity:
C_OBJECT($1)
C_TEXT($2)
$1.result:=$1.value.name=$2
Produto: 4D
Tema: Coleções
Número
805258
Criado por: 4D v16 R6
Manual de linguagem 4D ( 4D v19)
Manual de linguagem 4D ( 4D v19.1)
Manual de linguagem 4D ( 4D v19.4)
Manual de linguagem 4D ( 4D v19.5)
Manual de linguagem 4D ( 4D v19.6)
Manual de linguagem 4D ( 4D v19.7)
Manual de linguagem 4D ( 4D v19.8)