Свойства только для чтения в JavaScript браузера - PullRequest
0 голосов
/ 22 октября 2018

Я пытаюсь перечислить все нативные свойства, доступные только для чтения, в JavaScript API, например, window.top или window / document.location.Мне не удалось найти такой список, и я много гуглил :(. Кто-нибудь может помочь, пожалуйста?

1 Ответ

0 голосов
/ 22 октября 2018

Согласно вашему комментарию, вы ищете все доступные только для чтения window свойства объекта.Кто-то уже связал вас с этим списком свойств окна MDN .

Если вы ищете реальное решение JavaScript, вы можете просмотреть свойства объекта window и просмотреть егоwritable статус через Object.getOwnPropertyDescriptor.

Пример:

for (const prop in window) {
    // using destructuring here
    const { writable } = Object.getOwnPropertyDescriptor(window, prop);

    // an object property is by default writable,
    // absence of writable prop is equivalent to `writable=true`
    if (writable != null && writable !== false) {
        console.log(prop, 'is writable');
    }
}

Также есть Object.getOwnPropertyDescriptors, который позволяет вам получить все реквизиты за один выстрел.

РЕДАКТИРОВАТЬ

Обратите внимание, что это будет включать глобальные библиотеки, такие как jQuery и Google Analytics, лучше всего придерживаться фиксированного списка, такого как в MDN.Если вы работаете с простой HTML-страницей, над которой у вас есть полный контроль только с vanilla JS, все будет в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...