在文档中定义函数的区别.准备好了吗?

Difference between defining a function within document.ready or not

本文关键字:区别 准备好了 函数 文档 定义      更新时间:2023-09-26

在文档中定义函数有什么区别?准备好了吗?

是否影响函数何时可以调用的范围?

示例,是否有任何问题/差异,我应该意识到内部函数的位置定义&Outside ():

<script>
document.ready(){
 function inside(){
    alert('inside');
 }
}
 function outside(){
    alert('outside');
 }
</script>

是的,您只能从ready事件的回调内部访问inside函数:

document.ready(function(){
  function inside(){
    alert('inside');
  }
  inside(); // works
  outside(); // works
});
function outside(){
  alert('outside');
}
inside(); // doesn't work
outside(); // works

是否影响函数何时可以调用的范围?

是的,没有别的了。

(尽管您的特定示例取决于您首先向document对象添加ready()方法)

Javascript有函数级作用域,这意味着如果你在文档中定义一个函数。准备好了,在document.ready

之外是不可用的

我将在外部定义一个命名空间:Var app = {};

然后像这样定义你的内部函数:App.inside = function() {