Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   navigator.__proto__ непонятка (https://javascript.ru/forum/misc/85922-navigator-__proto__-neponyatka.html)

leaner007 30.05.2024 15:40

navigator.__proto__ непонятка
 
делаю:

let obj1={};
obj1._proto_=navigator._proto__;
document.write(obj1.userAgent); // >> TypeError: Illegal invocation

через for in прогоняю, это свойство есть, в чем дело?

зы: Нужно получить userAgent, но не через navigator.userAgent а через его прототип Navigator либо любым другим способом но не через navigator.userAgent, как можно это сделать?

Alexandroppolus 30.05.2024 15:54

Цитата:

Сообщение от leaner007
не через navigator.userAgent

странная хотелка)

var prop = Object.getOwnPropertyDescriptor(Navigator.prototype, 'userAgent');
alert(prop.get.call(navigator));


формально, нигде в коде нет navigator.userAgent

leaner007 30.05.2024 16:31

угу, работает... (хоть и не понятно почему, надо подучить мат часть)

после:
Object.defineProperty(navigator,"userAgent",{value :"blablabla"});

выдало изначальное правильное значение


Часовой пояс GMT +3, время: 12:38.