From c058fa0fb22dc40ef0225b21a97578cddd0aaffa Mon Sep 17 00:00:00 2001 From: Florian Merz Date: Thu, 11 Feb 2021 14:51:05 +0100 Subject: unslug ru: move --- .../global_objects/proxy/handler/set/index.html | 179 --------------------- 1 file changed, 179 deletions(-) delete mode 100644 files/ru/web/javascript/reference/global_objects/proxy/handler/set/index.html (limited to 'files/ru/web/javascript/reference/global_objects/proxy/handler/set') diff --git a/files/ru/web/javascript/reference/global_objects/proxy/handler/set/index.html b/files/ru/web/javascript/reference/global_objects/proxy/handler/set/index.html deleted file mode 100644 index 88b030ecc4..0000000000 --- a/files/ru/web/javascript/reference/global_objects/proxy/handler/set/index.html +++ /dev/null @@ -1,179 +0,0 @@ ---- -title: handler.set() -slug: Web/JavaScript/Reference/Global_Objects/Proxy/handler/set -tags: - - Прокси - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/Proxy/Proxy/set ---- -
{{JSRef}}
- -

Метод handler.set() является ловушкой для установки значения свойству.

- -

Синтаксис

- -
var p = new Proxy(target, {
-  set: function(target, property, value, receiver) {
-  }
-});
-
- -

Параметры

- -

Следующие параметры передаются методу set() . this привязан к обработчику

- -
-
target
-
Исходный обьект, который проксируется.
-
property
-
Имя свойства, в которое устанавливается значение value.
-
value
-
Значение, устанавливаемое в свойство property.
-
receiver
-
Объект, которому первоначально было присвоено задание. Обычно это сам прокси. Но обработчик set() также может быть вызван косвенно, через цепочку прототипов или различными другими способами.
-      Например, предположим, что скрипт выполняет
obj.name = "jen", при этом obj не является прокси и не имеет собственного свойства .name, но имеет прокси в цепочке прототипов. Будет вызван обработчик прокси set() , а obj будет передан в качестве получателя.
-
-
- -

Возвращаемые результаты

- -

Метод set должен возвращать boolean значение.

- - - -

Описание

- -

Метод handler.set является ловушкой для установки значения свойству.

- -

Перехват

- -

Эта ловушка может перехватывать следующие операции:

- - - -

Инварианты

- -

Если нарушены следующие инваринаты, то proxy выбросит {{jsxref("TypeError")}}:

- - - -

Примеры

- -

Следующий код перехватывает установку значения свойству.

- -
var p = new Proxy({}, {
-  set: function(target, prop, value, receiver) {
-    target[prop] = value
-    console.log('property set: ' + prop + ' = ' + value)
-    return true
-  }
-})
-
-console.log('a' in p)  // false
-
-p.a = 10               // "property set: a = 10"
-console.log('a' in p)  // true
-console.log(p.a)       // 10
-
- -

Specifications

- - - - - - - - - - - - - - - - - - - -
СпецификацияСтатусКомментарий
{{SpecName('ES2015', '#sec-proxy-object-internal-methods-and-internal-slots-set-p-v-receiver', '[[Set]]')}}{{Spec2('ES2015')}}Initial definition.
{{SpecName('ESDraft', '#sec-proxy-object-internal-methods-and-internal-slots-set-p-v-receiver', '[[Set]]')}}{{Spec2('ESDraft')}}
- -

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

- -
{{CompatibilityTable}}
- -
- - - - - - - - - - - - - - - - - - - -
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatChrome("61")}}{{CompatGeckoDesktop("18")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatSafari("10.1")}}
-
- -
- - - - - - - - - - - - - - - - - - - - - -
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatUnknown}}{{CompatUnknown}}{{CompatGeckoMobile("18")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
-
- -

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

- - -- cgit v1.2.3-54-g00ecf