有没有办法从回调中访问这个变量?

如何从回调测试中访问土豆,土豆匿名函数无法修改?绑定等不起作用,有人有想法吗?


//This cannot be changed

!function(a){

    //

    let potatos = {

        count: 999

    }

    //

    let garden = {

        /**

         * 

         */

        callbacks: [],

        /**

         * 

         */

        showInfo: function() {

            this.callbacks.forEach((cb) => {

                cb();

            })

        } 

    }

    //

    global.garden = garden;//or window.garden

}();

/**

 * 

 */

function test() {

    console.log(potatos);//Error

}


garden.callbacks.push(test);

garden.showInfo();


largeQ
浏览 92回答 1
1回答

鸿蒙传说

不,JavaScript 对变量使用词法范围。test在存在的任何范围之外声明potatoes。它无法访问该变量。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript