第一天的需求寫了一個 window.onload
,可以正常執行,第二天加了一個類似的需求,為了分開各個功能,我copy了前一天的代碼,完成了功能,沒有進行測試,直接上線,導緻原來的代碼無法運作,就像下面的代碼一樣
<script>
// 第一天寫的代碼
window.onload = function () {
console.log("window.onload1");
};
// 第二天加的需求
window.onload = function () {
console.log("window.onload2");
};
</script>
控制台隻能列印
window.onload2
兩次指派
window.onload
,第一次的值被第二次的值給覆寫了,是以第一個函數并沒有執行
正确的寫法應該是
<script>
function func1() {
console.log("window.onload1");
}
function func2() {
console.log("window.onload2");
}
// 隻能有一個`window.onload`
window.onload = function () {
func1();
func2();
};
</script>
可以得到期望的輸出
window.onload1
window.onload2