Javascript:过滤已附加到全局作用域的变量

Javascript: Filter variables that have been attached to global scope?

本文关键字:全局 作用域 变量 过滤 Javascript      更新时间:2023-09-26

是否可以在浏览器中找到附加到窗口作用域的变量?不是预先存在的变量,而是我附加的变量。

执行console.log(窗口)提供了一长串可用的变量,但我只想看看我附加了什么。

我们可以取出任何具有"[native function]"的函数,因为它们是。。。出生地的下面的代码段将创建一个数组non_natives,其中包含以前未存在的函数名。

var non_natives = [];
for ( fin in window ) {
  if ( typeof(window[fin]) === "function" && window[ fin ].toString().indexOf("[native code]") === -1 ) {
    non_natives.push( fin );
  }
}

如果您将其复制并粘贴到web控制台中,您应该能够查看non_natives阵列。

您可以将输出减少为仅变量,请尝试此

Object.keys(window)