【问题标题】:How to find a JS function declaration in browser sources?如何在浏览器源代码中找到 JS 函数声明?
【发布时间】:2016-01-21 00:01:02
【问题描述】:

如何在FF的源码中找到JS函数声明?

首先我想找到函数“copy”的声明。我打开控制台,输入并执行'copy.toSource()',输出说它是本机代码。我查看了this question page,点击了链接,下载了源代码,我想我会搜索“复制”这个词,但搜索结果是巨大的,大约有 17k 个条目,我无法在这里找到“复制”声明)

任何想法如何找到“复制”声明,在哪个目录中搜索?

PS:看看所有其他功能也会很有趣,例如“console.log”。如果你知道如何找到它的声明,那就太棒了。

【问题讨论】:

    标签: javascript firefox spidermonkey


    【解决方案1】:

    copy 的来源(假设您的意思是“复制到剪贴板”)在./toolkit/devtools/webconsole/utils.js 中。它很小,所以在这里:

    WebConsoleCommands._registerOriginal("copy", function JSTH_copy(aOwner, aValue)
    {
      let payload;
      try {
        if (aValue instanceof Ci.nsIDOMElement) {
          payload = aValue.outerHTML;
        } else if (typeof aValue == "string") {
          payload = aValue;
        } else {
          payload = JSON.stringify(aValue, null, "  ");
        }
      } catch (ex) {
        payload = "/* " + ex  + " */";
      }
      aOwner.helperResult = {
        type: "copyValueToClipboard",
        value: payload,
      };
    });
    

    console.*函数在./dom/base/Console.cpp中定义

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多