Эти выводы выглядят совершенно корректно. Например, когда я запрашиваю строковую версию window.navigator
, я правильно получаю
console.log(String(window.navigator));
"[object Navigator]"
С другой стороны, когда я спрашиваю конкретное значение, я получаю (в хром):
console.log(window.navigator.userAgent);
"Mozilla/5.0 (X11; Linux i686) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.71 Safari/534.24"
И когда я пытаюсь перечислить все элементы, я получаю
for (var i in window.navigator) console.log(i);
language
product
mimeTypes
appVersion
plugins
onLine
platform
vendor
appCodeName
cookieEnabled
geolocation
appName
productSub
userAgent
vendorSub
javaEnabled
getStorageUpdates
(учтите, что в приведенной выше строке кода я не проверял hasOwnProperty
, который обычно следует использовать при переборе элементов объекта).