Difference between revisions of "LlJson2List/fr"
m |
m (replace {{Multi-lang||fr}} by {{Multi-lang||/fr}}) |
||
Line 1: | Line 1: | ||
{{Multi-lang||fr}} | {{Multi-lang||/fr}} | ||
{{LSL Function | {{LSL Function{{#var:lang}} | ||
|func_id=?|func_sleep=0.0|func_energy=10.0 | |func_id=?|func_sleep=0.0|func_energy=10.0 | ||
|func=llJson2List|return_type=list|p1_type=string|p1_name=src | |func=llJson2List|return_type=list|p1_type=string|p1_name=src | ||
|func_footnote= Pour convertir une liste en une une chaîne de caractères formatée JSON , utilisez [[llList2Json | |func_footnote= Pour convertir une liste en une une chaîne de caractères formatée JSON , utilisez [[llList2Json{{#var:lang}}|llList2Json]]. | ||
|func_desc=Cette fonction prend une chaîne de caractères en entrée (voir [http://json.org JSON]), et renvoie une liste | |func_desc=Cette fonction prend une chaîne de caractères en entrée (voir [http://json.org JSON]), et renvoie une liste | ||
|return_text=liste parsée à partir de '''src''' | |return_text=liste parsée à partir de '''src''' | ||
Line 143: | Line 143: | ||
|examples= | |examples= | ||
|helpers | |helpers | ||
|also_functions={{LSL DefineRow||[[llList2Json | |also_functions={{LSL DefineRow||[[llList2Json{{#var:lang}}|llList2Json]]|}} | ||
{{LSL DefineRow||[[llJsonGetValue | {{LSL DefineRow||[[llJsonGetValue{{#var:lang}}|llJsonGetValue]]|}} | ||
{{LSL DefineRow||[[llJsonSetValue | {{LSL DefineRow||[[llJsonSetValue{{#var:lang}}|llJsonSetValue]]|}} | ||
{{LSL DefineRow||[[llJsonValueType | {{LSL DefineRow||[[llJsonValueType{{#var:lang}}|llJsonValueType]]|}} | ||
|also_events | |also_events | ||
|also_tests | |also_tests | ||
|also_articles={{LSL DefineRow||[[Typecast | |also_articles={{LSL DefineRow||[[Typecast{{#var:lang}}|Typecast]]|}} | ||
|notes= | |notes= | ||
|permission | |permission | ||
|negative_index | |negative_index | ||
|sort=Json2List | |sort=Json2List | ||
|cat1=List | |cat1=List{{#var:lang}} | ||
|cat2=String | |cat2=String{{#var:lang}} | ||
|cat3=Data Conversion | |cat3=Data Conversion{{#var:lang}} | ||
|cat4=JSON | |cat4=JSON{{#var:lang}} | ||
|history = Date de Release [[ Release_Notes/Second_Life_Server/13#13.05.20.276191 | 20/05/2013 ]] | |history = Date de Release [[ Release_Notes/Second_Life_Server/13#13.05.20.276191 | 20/05/2013 ]] | ||
}} | }} |
Latest revision as of 13:12, 1 July 2013
LSL Portail Francophone | LSL Portail Anglophone | Fonctions | Évènements | Types | Operateurs | Constantes | Contrôle d'exécution | Bibliothèque | Tutoriels |
Description
Fonction: list llJson2List( string src );? | N° de fonction |
0.0 | Delais |
10.0 | Energie |
Cette fonction prend une chaîne de caractères en entrée (voir JSON), et renvoie une liste
Renvoie un list liste parsée à partir de src
• string | src |
Pour convertir une liste en une une chaîne de caractères formatée JSON , utilisez llList2Json.
Spécifications
Voir Json_usage_in_LSL
- Si la chaîne de caractères JSON représente un simple élément qui n est ni un objet JSON , ni un tableau JSON , alors une simple liste avec ce seul élément est retourné
Exemple : soit la chaîne JSON : <javascript>
"clé numéro 1": "valeur alpha", "clé numéro 2": "valeur beta"
</javascript> On n a pas d objet JSON ( pas de "{" ) => la fonction retourne une liste avec un seul élément avec tout le contenu de la chaîne de caractères JSON
- Si la chaîne de caractères JSON représente un objet JSON , alors la liste est une liste stridée avec les clés et les valeurs de ces objets JSONs.
Exemple : soit la chaîne JSON : <javascript> {
"clé numéro 1": "valeur alpha", "clé numéro 2": "valeur beta"
} </javascript> => la fonction retourne une liste de 4 éléments :
"clé numéro 1" |
"valeur alpha" |
"clé numéro 2" |
"valeur beta" |
Il semble aussi que dans le standard JSON , le nom des clés doit être unique . Néanmoins , la fonction est un peu plus permissive et retourne sans erreur quand c est le cas . Par exemple , dans l exemple ci dessus, si on avait eu deux "clé numéro 1" , la fonction aurait retourné une liste de 4 éléments
- Si la chaîne de caractères JSON représente un objet JSON , et que cet objet est composé lui même d'autres objets JSON ou de tableaux JSON , la liste en sortie ne peut pas contenir de sous listes . Donc, l'arborescence du sous-objet ou du sous-tableau sera une simple chaîne de caractères avec la concaténation de son arborescence .
Par exemple : <javascript> {
"clé numéro 1": "valeur alpha", "clé numéro 2": { "sous clé numéro 1" : "valeur a", "sous clé numéro 2" : "valeur b" }
} </javascript> => on a deux objets au premier niveau de l'arborescence . Le second objet "clé numéro 2" a deux sous-sous objets "sous clé numéro 1", "sous clé numéro 2". La fonction retourne 4 éléments ( 2 paires clés valeurs ) :
"clé numéro 1" |
"valeur alpha" |
"clé numéro 2" |
"sous clé numéro 1" : "valeur a", "sous clé numéro 2" : "valeur b" |
Le quatrième élément qui ne peut pas se représenter par une liste imbriquée parce que LSL ne permet pas les listes imbriquée
décrit toute l'arborescence à ce niveau .
On peut extraire la valeur de cet élément , et rappeler llJson2List uniquement sur cette valeur pour en extraire une seconde liste
Par exemple , en appelant
<lsl>
list res = llJson2List(llList2String(llJson2List( json ), 3 ));
</lsl>
on aurait notre liste res avec :
"sous clé numéro 1" |
"valeur a" |
"sous clé numéro 2" |
"valeur b" |
- Si la chaîne de caractères JSON représente un tableau JSON , la fonction retourne une liste composée de tous les éléments du tableau JSON
Exemple : soit le tableau JSON <javascript> [ "valeur1", "valeur2", "valeur3" ] </javascript> => La fonction retourne une liste de 3 éléments :
"valeur1" |
"valeur2" |
"valeur3" |
- de la même façon que précédemment pour les objets composés , si le tableau JSON est composé de sous-tableaux ou de sous-objets , ces éléments seront représentés comme une chaîne de caractères concaténée
Exemple : <javascript> [
"valeur1", "valeur2", { "clé objet": "valeur" }, "valeur3", [ "ssous valeur1", "sous valeur2" ]
] </javascript> Ce tableau est composé de deux valeurs simples , puis d une valeur qui représente un objet JSON , puis d une autre valeur simple , puis d une dernière valeur qui représente un tableau . => la fonction retourne une liste de 5 élements
"valeur1" |
"valeur2" |
{ "clé objet": "valeur" } |
"valeur3" |
[ "ssous valeur1", "sous valeur2" ] |