window.onload=fun()和window.onload=fun的区别

本文解释了window.onload=fun()和window.onload=fun两种用法之间的关键区别。前者直接执行函数并赋值,后者则正确地将函数绑定到onload事件上,在DOM加载完成后触发。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

window.onload=fun()和window.onload=fun直观看上去,两者只有一个括号的区别,那么接下来我们分析下他们的本质区别:

举个例子:

function  abc(){ return 123}    

window.onload=abc()  就等于  window.onload=123   它的优先执行顺序是从右往左,abc()函数先执行再赋值,而onload是绑定事件,但因为()的作用,导致浏览器解析到此处时函数立即执行,所以在dom树未完成加载,函数就已运行并赋值,所以window.onload=fun()是不会触发函数的。

window.onload=fun   就等于window.onload=abc   此处指为onload事件绑定了一个方法,这个方法就是abc,所以onload事件是在页面加载完之后(也就是dom树构建完成之后)触发abc函数。


注:此知识点在一些前辈的指点下搞懂,此处谢谢!我本人是刚入行的菜鸟一只,这是建立博客的第一篇文章,此次文章的目的是想记录自己在前端之路的成长经历,也希望和大家分享自己遇到的一些坑,希望可以帮助到和我一样的前端小白,大家一起交流、进步。文章中若有欠妥的地方,望大家轻喷,希望各位前辈点明、指教。谢谢大家。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值