JsonDocument::remove()
Description
Depending on the type of its argument, JsonDocument::remove()
either:
- removes the element at the specified index from the root array
- removes the member with the specified key in the root object
In other words, JsonDocument::remove()
behaves like JsonArray::remove()
or JsonObject::remove()
.
JsonDocument::remove()
does nothing if the root value doesn’t match the expected type. For example, if you call remove("key")
on an array, the document won’t change.
Causes memory leaks ⚠️
Because
JsonDocument
contains a monotonic allocator, this function cannot release the memory associated with the removed value.
Consequently, you cannot call this function in a loop; otherwise, theJsonDocument
will overflow.
Signature
void remove(size_t index) const;
void remove(const char* key) const;
void remove(const __FlashStringHelper* key) const;
void remove(const String& key) const;
void remove(const std::string& key) const;
void remove(std::string_view key) const;
Arguments
index
: the zero-based position of the array element to remove.
key
: the key of the object member to remove