关于js函数声明和调用函数的问题

发布网友 发布时间:2022-04-24 09:05

我来回答

1个回答

热心网友 时间:2022-04-22 16:42

“函数的调用只能在自执行函数内”这句话是错的,应该说如果函数内的语句涉及页面DOM元素的操作,则函数的调用最好是放到自执行函数内,否则就可以放在外面执行。这是因为如果不放在自执行函数内而是放在外面立即执行,那么执行的时候页面的整个DOM结构很可能尚未完全加载到内存,这时候如果要对页面的某个DOM元素进行操作就很可能会失败(JS可能会认为这个元素不存在而返回null),所以为了保险起见就把函数的调用放到自执行函数内,因为自执行函数肯定是在页面全部调入内存后才执行的。而如果你的代码没有涉及任何页面元素的操作,自然就不需放到自执行函数内啦,比如下面这个:

function fun1(){
    return 1+2;   //这个fun1函数只是进行最简单的数*算,没有操作页面元素
}
console.log(fun1());   //所以fun1可以直接调用

追问您贴出来的代码是在console.log()里调用函数,如果向下面这种情况:
function fun1(){
..
}
fun1();
这样是否能够直接执行?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com