javascript:在闭包范围内调用函数

标签 javascript

有什么方法可以覆盖闭包,使其完成原始闭包的部分功能吗?我知道没有直接的方法,但是有一些技巧吗?我愿意凌乱...

<html>
    <head>

        // I DON'T CONTROL THIS CODE!!!
        <script>
        ;(function() {

            function _dothing() {
                alert("_dothing");
            }

            function _doit() {
                _dothing();
                alert("_doit");
            }

            window.K = { doit : _doit };

        })();
        </script>
    </head>
<body>

    // I DO CONTROL THIS CODE
    <script>

        function mydoit() {
            alert("mydoit");
            _dothing();         <-- THIS FAILS, IS THERE ANY WAY TO SUCCEED? :(
        }

        window.K.doit = mydoit;
        window.K.doit();
    </script>

</body>
</html>

最佳答案

我认为您可以使用 jQuery 获取脚本标记的内容,然后您可以使用 eval 参见 question .

关于javascript:在闭包范围内调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12960963/

相关文章:

javascript - Three.js - 相机的良好 z 距离,可以看到盒子的全景

javascript - 通过 spotify web api 和 javascript 播放歌曲时出现问题

javascript - jQuery tablesorter - 对包含混合文本和数字的列进行排序

javascript - Phantomjs-预构建错误

javascript - 通过javascript从不同的网页中获取文本

javascript - 显示来自 shapefile 数据的弹出窗口

javascript - 多个组的 jQuery 数据表总和/小计

javascript - 刚刚被发送了一个JS病毒。如何安全地显示输出?

javascript - 我如何停止流路由器中的订阅

javascript - 用 javascript 将字符串中的 html 实体替换(LaTeX)命令