Removes a specified element or numeric property from an object.
Syntax
bool JS_DeleteElement(JSContext *cx, JS::HandleObject obj, uint32_t index); // Added in SpiderMonkey 45 bool JS_DeleteElement(JSContext *cx, JS::HandleObject obj, uint32_t index, JS::ObjectOpResult &result);
Name | Type | Description |
---|---|---|
cx |
JSContext * |
Pointer to a JS context from which to derive runtime information. Requires request. In a JS_THREADSAFE build, the caller must be in a request on this JSContext . |
obj |
JS::HandleObject |
Object from which to delete an element. |
index |
uint32_t |
Index number of the element to delete. |
result |
JS::ObjectOpResult & |
(out parameter) Receives the result of the operation. |
Description
JS_DeleteElement
removes a specified element or numeric property, index
, from an object, obj
. If an object references an element belonging to a prototype, the element reference is removed from the object, but the prototype's element is not deleted. If deletion is successful, JS_DeleteElement
returns true
. Otherwise it returns false
.
For JavaScript 1.2 and earlier, if failure occurs because you attempt to delete a permanent or read-only element, JS_DeleteElement
reports the error before returning false
. For JavaScript 1.3 and later, the attempt is silently ignored.
To truncate an array, use JS_SetArrayLength
. To remove all elements and properties from an object, call JS_ClearScope
.
See Also
- MXR ID Search for
JS_DeleteElement
- bug 1113369 -- added
result
parameter