javascript - 调用与内部函数同名的外部函数

标签 javascript

对于下面的函数 doStuff,即使它与内部函数同名,是否可以调用 sayHello(在函数 dostuff 之外)?

var sayHello = function(){
    alert("Called from outside the function");
}
function doStuff(){
    sayHello();
    function sayHello(){
        alert("Called from inside the function. How can I call the sayHello function that is outside the scope of doStuff?");
    }
}
    doStuff();
​

在上面的 Javascript 代码中,函数 sayHello(这是 2 个函数的名称)是从函数内部调用的,而不是外部。

这是 jsFiddle 上的:http://jsfiddle.net/5MSTU/

最佳答案

如果外部函数是全局的,您可以将其定位为 window 对象的成员。

window.sayHello();

否则,您将需要使用不同的名称。 JavaScript 允许您隐藏变量,因此与外部变量同名的内部变量可以有效地禁用对外部变量的访问。

关于javascript - 调用与内部函数同名的外部函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12665595/

相关文章:

javascript - 显示数据之间的依赖关系(映射/矩阵)

javascript - 将元素添加到 JSON 数组 JavaScript

javascript - 异步意外标识符

javascript - 带有子节点的拖放区域

javascript - 调用函数时在javascript中设置计时器

javascript - 根据php对ajax请求的响应制作动态html表

javascript - 如何使 DIV 元素默认关闭?

javascript - Mongoose - FindOne 和 Save 不起作用

javascript - getText 和 javascript 之间的\r\n(换行)冲突

javascript - 选中/取消选中所有复选框在 IE8 中不起作用