Difference between revisions of "JSON DELETE"

From Second Life Wiki
Jump to navigation Jump to search
(page still needs the value and dvalue, which I couldn't find out since I couldn't find a region running the new server version that supports JSON_DELETE)
 
m (Added that using JSON_DELETE to remove a non-existent item effectively nukes the JSON string)
 
(4 intermediate revisions by 3 users not shown)
Line 2: Line 2:
|name=JSON_DELETE
|name=JSON_DELETE
|type=string
|type=string
|value="�"
|dvalue={{HoverText|"�"|Special Unicode Character
Unicode:	U+FDD8
HTML:	
llUnescapeUrl({{String|%EF%B7%98}});}}
|desc=A [[:Category:LSL_Constants|constant]] used to delete a value within a [http://www.json.org/ JSON] text string.
|desc=A [[:Category:LSL_Constants|constant]] used to delete a value within a [http://www.json.org/ JSON] text string.
|constants={{LSL Constants/JSON}}
|constants={{LSL Constants/JSON}}
|examples=<lsl>default
|examples=<source lang="lsl2">default
{
{
     touch_start(integer num_detected)
     touch_start(integer num_detected)
Line 18: Line 20:
         llSay(PUBLIC_CHANNEL, "Modified: " + jsonString);
         llSay(PUBLIC_CHANNEL, "Modified: " + jsonString);
     }
     }
}</lsl>
}</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 15:17, 24 March 2023

Description

Constant: string JSON_DELETE = "�";

The string constant JSON_DELETE has the value "�"

A constant used to delete a value within a JSON text string.

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.
All Issues ~ Search JIRA for related Bugs

Related Articles

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.

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);
    }
}

Deep Notes

Search JIRA for related Issues

Signature

string JSON_DELETE = "�";