Окно: свойство self
Базовая Широко доступна
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
Только для чтения свойство Window.self возвращает само окно как WindowProxy. Его можно использовать с точкой в window объекте (то есть, window.self) или автономно (self). Преимущество автономной записи заключается в том, что похожая запись существует для контекстов, не являющихся окнами, таких как в Web Workers. Используя self, вы можете обратиться к глобальной области видимости таким образом, что это будет работать не только в контексте окна (self будет разрешено до window.self), но и в контексте рабочего процесса (self тогда будет разрешено до WorkerGlobalScope.self).
Значение
Объект WindowProxy.
Примеры
Использование window.self подобным образом можно заменить на window.
if (window.parent.frames[0] !== window.self) {
// this window is not the first frame in the list
}
Кроме того, при выполнении в активном документе контекста просмотра window является ссылкой на текущий глобальный объект, а значит, всё нижеследующее эквивалентно:
const w1 = window; const w2 = self; const w3 = window.window; const w4 = window.self; // w1, w2, w3, w4 all strictly equal, but only w2 will function in workers
Спецификации
| Спецификация |
|---|
| HTML # dom-self-dev |
Совместимость с браузерами
| Рабочий стол | Мобильный | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
self |
1 | 12 | 1 | ≤12.1 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 |
См. также
- Его эквивалент
Worker,WorkerGlobalScope.self.
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Window/self