JSON OBJECT

From Second Life Wiki
Revision as of 23:59, 21 September 2013 by Strife Onizuka (talk | contribs)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Description

Constant: string JSON_OBJECT = "﷑";

The string constant JSON_OBJECT has the value "﷑"

Used with the llList2Json function to indicate that the list provided is a strided list of "Key", Value pairs (which may be empty), and that a string representing a Json object will be returned.

Also a possible return value for the llJsonValueType function that indicates the Json data type of at the specifier location within a given Json text is, in fact, a JSON_OBJECT.

Related Articles

Constants

Type Flags Value Unicode Integer URL Encoded HTML Encoded Description
JSON_INVALID U+FDDO 64976 "%EF%B7%90"  Value returned when inputs are not well formed.
JSON_OBJECT U+FDD1 64977 "%EF%B7%91" 
JSON_ARRAY U+FDD2 64978 "%EF%B7%92" 
JSON_NUMBER U+FDD3 64979 "%EF%B7%93" 
JSON_STRING U+FDD4 64980 "%EF%B7%94" 
JSON_NULL U+FDD5 64981 "%EF%B7%95" 
JSON_TRUE U+FDD6 64982 "%EF%B7%96" 
JSON_FALSE U+FDD7 64983 "%EF%B7%97" 
JSON_DELETE U+FDD8 64984 "%EF%B7%98"  Used with llJsonSetValue to remove a key-value pair.

Functions

•  llList2Json
•  llJsonValueType

Examples

Showing use to form a Json object: <lsl>string jsonText;

default { state_entry() { // NOTE: All even numbered elements in the supplied list MUST be strings or JSON_INVALID will be returned! jsonText = llList2Json(JSON_OBJECT, ["A", 3, "B", <1.0,1.0,1.0>, "C", "A phrase", "D", PI]); } touch_start(integer total_number) { // In the resulting Json object, "Keys" are separarted from Values by a colon (:) // and "Key":Value pairs by a comma (,). llOwnerSay(jsonText); // {"A":3,"B":"<1.000000, 1.000000, 1.000000>","C":"A phrase","D":3.141593} } }</lsl>

Showing usage to determine if a Value within a Json text is an object: <lsl>string jsonText;

default { state_entry() { // Set jsonText to [3,{"A":77,"B":66},"A phrase"] // A Json array whose second element is a Json object jsonText = "[3,{\"A\":77,\"B\":66},\"A phrase\"]"; llOwnerSay(jsonText); } touch_start(integer total_number) { // Test the entirety of the Json text to see if it's an object // Note use of the empty list for this if (llJsonValueType(jsonText, []) == JSON_OBJECT) { llOwnerSay("The supplied string is a Json object."); } else { llOwnerSay("The supplied string is not a Json object."); // TRUE }

// Test second element of the array if (llJsonValueType(jsonText, [1]) == JSON_OBJECT) { llOwnerSay("The second element of the array is a Json object."); // TRUE } else { llOwnerSay("The second element of the array is not a Json object."); } } }</lsl>

Deep Notes

Search JIRA for related Issues

Signature

string JSON_OBJECT = "﷑";