gpt4 book ai didi

javascript - jQuery 函数作用域混淆

转载 作者:行者123 更新时间:2023-12-02 16:37:15 25 4
gpt4 key购买 nike

编辑我希望该功能可在全局范围内访问

为什么 myfunction0 在 dom 就绪调用中工作而 myfunction1 不起作用?

外部.js 文件

   (function($) {

// functions defined like that works
myfunction0 = function() {
console.log("hello world");
}

// functions defined like that do not work
function myfunction1() {
console.log("hello world");
}

})(jQuery);

index.html

<script>
$(function () {
myfunction0(); // works
myfunction1(); // does not work not defined
})
</script>

第一个函数定义是否具有全局范围,而第二个函数定义仅具有本地“文件内”范围?

最佳答案

function myfunction1() { }

将位于其定义范围内。不是文件,而是它所包装的匿名函数。

myfunction0 = function() { }

声明一个变量(恰好是一个函数)。

由于没有附加 var,该变量具有全局作用域。

关于javascript - jQuery 函数作用域混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27821428/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com