Reflect.deleteProperty()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2016.

Статический метод Reflect.deleteProperty() позволяет удалять свойства из объекта. Реализация данной функции схожа с оператором delete.

Интерактивный пример

Синтаксис

Reflect.deleteProperty(target, propertyKey)

Параметры

target

Целевой объект в котором будет удалено свойство.

propertyKey

Имя удаляемого свойства.

Возвращаемое значение

Boolean указывающий, было ли свойство успешно удалено.

Исключения

Исключение TypeError, если target не является Object.

Описание

Метод Reflect.deleteProperty позволяет вам удалить свойство объекта. Он возвращает Boolean указывающий, было ли свойство успешно удалено. Он так же идентичен оператору delete без использования строгого режима.

Примеры

Использования Reflect.deleteProperty()

js
var obj = { x: 1, y: 2 };
Reflect.deleteProperty(obj, "x"); // true
obj; // { y: 2 }

var arr = [1, 2, 3, 4, 5];
Reflect.deleteProperty(arr, "3"); // true
arr; // [1, 2, 3, , 5]

// Возвращает true даже если такого свойства не существует
Reflect.deleteProperty({}, "foo"); // true

// Возвращает false если такое свойство ненастраиваемое
Reflect.deleteProperty(Object.freeze({ foo: 1 }), "foo"); // false

Спецификации

Specification
ECMAScript Language Specification
# sec-reflect.deleteproperty

Совместимость с браузерами

BCD tables only load in the browser

Смотрите также