将所有代码放在window.onload = function(){}之间有什么区别?并且只将函数名放在window.onload = function(){};?
中将所有代码放入window.onload:
window.onload=function() {
function(){
// do something here
}
};
只将函数名放在window.onload:
中function foo() {
//do something here
}
window.onload=function() {
foo();
};
有什么区别?或者它们之间有什么区别吗?
答案 0 :(得分:2)
如果您在window.onload
内声明它,则只能在window.onload
触发时使用它,而不是之前。如果您需要在加载孔文档之前使用该功能,则不能。否则,如果您在外部编写函数,则只在事件触发时调用它,但您可以在定义后立即使用它。
答案 1 :(得分:1)
非常相似!
在第一种情况下,只有在window.onload
被触发时才声明一个函数。
在第二种情况下,您声明了可从window.onload
事件
请参阅此plunker演示:demo
答案 2 :(得分:0)
在第一种情况下,所有代码都集中在一个匿名函数中,这很好,因为你不会污染全局名称空间。
在第二种情况下,您的js中全局可以使用foo
,如果您或使用您的js文件的人重新定义foo
答案 3 :(得分:0)
First thing , You can't declare function inside function . As you first did ,
You can write some query inside function. But if you want use your query again
and again then you have to declare a function and you will put your query.
Then you will call that function from other function inside the same page.