Javascript java脚本文件中的文档准备问题

Javascript java脚本文件中的文档准备问题,javascript,Javascript,我正在外部java脚本文件中编写一个名为test function的函数。 在document ready函数内部,我编写了一个函数,该函数无法从另一个html页面中声明的另一个java脚本访问,并且无法从外部document ready函数调用。如果我在document ready外部声明了function test函数,则该函数可以正常工作。这里有几点需要注意: \1函数名是赋值为函数的变量。因此,以下两件事实际上是相同的: function my_func = function () {

我正在外部java脚本文件中编写一个名为test function的函数。
在document ready函数内部,我编写了一个函数,该函数无法从另一个html页面中声明的另一个java脚本访问,并且无法从外部document ready函数调用。如果我在document ready外部声明了function test函数,则该函数可以正常工作。

这里有几点需要注意:

\1函数名是赋值为函数的变量。因此,以下两件事实际上是相同的:

function my_func = function () {
    alert('Hello World!');
};

var my_func = function () {
    alert('Hello World!');
}; 
\javascript中的变量范围:闭包内部声明的变量仅对该闭包可见。但是,闭包可以访问在更高范围内声明的变量。因此,以下措施行不通:

var my_func = function () {
    var my_second_func = function () { alert ('hello');};
};
my_func();
my_second_func(); // not declared
但以下措施将起作用:

var my_second_func; // declare the variable in the global scope
var my_func = function () {
    my_second_func = function () { alert ('hello');};
};
my_func();
my_second_func(); // will alert "hello"
注意
var
关键字的位置。它们在当前范围内声明一个变量。如果要绝对确保函数在全局范围内可用,请按以下方式声明:

window.my_function = function () {
    // do something
};

但是,这通常被认为是不好的做法,应该谨慎使用。

这不是问题,您在闭包中声明了一个函数。很抱歉回答不完整,这样做就是在闭包中声明函数:
http://stackoverflow.com/questions/111102/how-do-javascript-closures-work
该函数仅在该closure中可用。是否还有其他方法调用该函数?或者,如果您从闭包返回对函数的引用,那么在该闭包中是不可能的