Difference between revisions of "JSON DELETE"
Jump to navigation
Jump to search
m (<lsl> tag to <source>) |
Lou Netizen (talk | contribs) m (Added that using JSON_DELETE to remove a non-existent item effectively nukes the JSON string) |
||
Line 22: | Line 22: | ||
}</source> | }</source> | ||
|caveats=*Using JSON_DELETE will '''not''' prune empty objects or arrays at higher levels. | |caveats=*Using JSON_DELETE will '''not''' prune empty objects or arrays at higher levels. | ||
* Using JSON_DELETE to delete a non-existent array or object element in a JSON string will return [[JSON_INVALID]], not an unaltered string. | |||
|functions= | |functions= | ||
{{LSL DefineRow||[[llJsonSetValue]]|}} | {{LSL DefineRow||[[llJsonSetValue]]|}} |
Latest revision as of 14:17, 24 March 2023
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Description
Constant: string JSON_DELETE = "�";Caveats
- Using JSON_DELETE will not prune empty objects or arrays at higher levels.
- Using JSON_DELETE to delete a non-existent array or object element in a JSON string will return JSON_INVALID, not an unaltered string.
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
• | llJsonSetValue |
Examples
default
{
touch_start(integer num_detected)
{
string jsonString = "[1,2,3,4,5]";
llSay(PUBLIC_CHANNEL, "Original: " + jsonString);
// we remove the first item (list has zero-based index!)
jsonString = llJsonSetValue(jsonString, [0], JSON_DELETE);
// "[2,3,4,5]"
llSay(PUBLIC_CHANNEL, "Modified: " + jsonString);
}
}