1 /* eslint-disable es/no-object-getownpropertynames -- safe */
2 var classof = require('../internals/classof-raw');
3 var toIndexedObject = require('../internals/to-indexed-object');
4 var $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;
5 var arraySlice = require('../internals/array-slice-simple');
7 var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
8 ? Object.getOwnPropertyNames(window) : [];
10 var getWindowNames = function (it) {
12 return $getOwnPropertyNames(it);
14 return arraySlice(windowNames);
18 // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
19 module.exports.f = function getOwnPropertyNames(it) {
20 return windowNames && classof(it) == 'Window'
22 : $getOwnPropertyNames(toIndexedObject(it));