了解范围内的每个功能

Know every function on scope

本文关键字:功能 范围内 了解      更新时间:2023-09-26

我有一个函数main,它有几个内部函数,如下所示:

function main_f (params) {
    function do_this () {
        // do this...
    }
    function do_that () {
        do_this(); // working
        main_f.parse_stuff(); // not working
        parse_stuff(); // not working
    }
    do_that();
    main_f.parse_stuff = function(){
        console.log("success");
    }
}
function second_f () {
    main_f.parse_stuff(); //working
}

我原以为main_f.parse_stuff()会在do_that内部工作,但事实并非如此。我的问题是:

-是否可以从main_f内部调用该方法?如何

EDIT:写入parse_stuff后执行do_that。

-为什么我不能从main_f调用parse_stuff

EDIT:我刚刚意识到,函数不是在编译时读取的,而是在执行时读取的。因此,当调用do_that时,它是不可见的。

-如何知道scope上的每个函数

这不是通过编程实现的,但您可以使用调试器来实现。只需在该范围上插入一个断点,就可以检查全局、本地和闭包中的所有内容。

我用chrome开发工具检查了这个。