Как сказал Четан Шастри в своем ответе, вы можете проверить наличие [native code]
внутри строковой функции:
Object.keys(window).filter(function(x)
{
if (!(window[x] instanceof Function)) return false;
return !/\[native code\]/.test(window[x].toString()) ? true : false;
});
Или просто:
Object.keys(window).filter(function(x)
{
return window[x] instanceof Function && !/\[native code\]/.test(window[x].toString());
});
в chrome вы можете получить все не собственные переменные и функции:
Object.keys(window);