Skip to content
lsl.devlsl.devLSL Dev

JSON ARRAY

Looking for the current API? Open the JSON_ARRAY reference →

Wiki description

Used with the llList2Json function to indicate that the provided list (which may be empty) is to be used to encode and return a string serialization of a Json array.
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 array.

Examples

Showing usage to form a Json array:
string jsonText;

default
{
	state_entry()
	{
		jsonText = llList2Json(JSON_ARRAY, ["A", 3, "B", <1.0,1.0,1.0>, "C", "A phrase", "D", PI]);
	}
	touch_start(integer total_number)
	{
		// In the resulting Json array, all Values are separated by a comma (,).
		llOwnerSay(jsonText); //  ["A",3,"B","<1.000000, 1.000000, 1.000000>","C","A phrase","D",3.141593]
	}
}
Showing usage to determine if a Value within a Json text is an array:
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 array
		// Note use of the empty list for this
		if (llJsonValueType(jsonText, []) == JSON_ARRAY)
		{
			llOwnerSay("The supplied string is a Json array."); // TRUE
		} else {
			llOwnerSay("The supplied string is not a Json array.");
		}

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

See also: constants

Type Flags Value Unicode Integer URL Encoded HTML Encoded Description
JSON_INVALID ﷐ U+FDDO 64976 "%EF%B7%90" &#xFDD0; Value returned when inputs are not well formed.
JSON_OBJECT ﷑ U+FDD1 64977 "%EF%B7%91" &#xFDD1;
JSON_ARRAY ﷒ U+FDD2 64978 "%EF%B7%92" &#xFDD2;
JSON_NUMBER ﷓ U+FDD3 64979 "%EF%B7%93" &#xFDD3;
JSON_STRING ﷔ U+FDD4 64980 "%EF%B7%94" &#xFDD4;
JSON_NULL ﷕ U+FDD5 64981 "%EF%B7%95" &#xFDD5;
JSON_TRUE ﷖ U+FDD6 64982 "%EF%B7%96" &#xFDD6;
JSON_FALSE ﷗ U+FDD7 64983 "%EF%B7%97" &#xFDD7;
JSON_DELETE ﷘ U+FDD8 64984 "%EF%B7%98" &#xFDD8; Used with llJsonSetValue to remove a key-value pair.

See also: functions

Original wiki source

Some wiki templates and tables need their original context. View this article on the Second Life Wiki. Technical wording and examples are retained from the source; historical guidance may differ from current behavior.

From the Second Life Wiki

Community documentation adapted from JSON ARRAY, by Linden Research, Inc. and contributing residents.View contributors and history.

Built from these wiki pages, as imported:

Licensed under CC BY-SA 3.0. Last wiki edit: .Formatting and links have been adapted for this site; API metadata follows the LSL definitions.