国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

js出現(xiàn)Uncaught ReferenceError: XXX is not defined錯誤的解決辦法

這篇具有很好參考價值的文章主要介紹了js出現(xiàn)Uncaught ReferenceError: XXX is not defined錯誤的解決辦法。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

javascript提示:Uncaught ReferenceError: XXX is not defined的意思是函數(shù)XXX()沒有被定義。js一般出現(xiàn)Uncaught ReferenceError: XXX is not defined這樣的錯誤,大概率是你把函數(shù)放在了window.onload里面。

出現(xiàn)這個問題的原因是:

1.window.onload事件是在整個頁面包括dom結(jié)構(gòu)、圖片等等全部加載完成之后才會觸發(fā)。把函數(shù)寫在這里邊是為了防止html還沒加載完就執(zhí)行了代碼,但是如果你寫在一個自己定義的函數(shù)中,那函數(shù)中的代碼是在你調(diào)用這個函數(shù)的時候才會執(zhí)行的。

2.如果將你自己的函數(shù)寫在window.onload里,那么這個函數(shù)的作用域就僅僅是window.onload中,該函數(shù)是在一個匿名函數(shù)內(nèi)部的局部函數(shù),并不是全局函數(shù),所以你調(diào)用時會顯示未定義,類似java那個內(nèi)部類。

3.HTML加載時由上往下的,在HTML加載的時候,遇到function關(guān)鍵字,聲明一個函數(shù)的時候,就會在內(nèi)存中開辟一個新的空間來對函數(shù)進(jìn)行存儲,方便以后進(jìn)行調(diào)用。

所以,當(dāng)將function XXX()寫到window.onload()=function(){}內(nèi)部的時候,需要整個頁面加載完成的之后,才聲明這個函數(shù),也就意味著,當(dāng)HTML加載到調(diào)用函數(shù)的時候,window.οnlοad=function(){}里面的函數(shù)XXX還沒有被聲明,這時候內(nèi)存中就找不到function XXX(),于是會報錯。

我補(bǔ)充一點(diǎn):

是會html是自上而下加載,出現(xiàn)Uncaught ReferenceError: XXX is not defined,極大可能是js引用放在前面例如:

<!DOCTYPE html>

<html lang="en">

<head>

? <meta charset="UTF-8">

? <meta name="viewport" content="width=device-width, initial-scale=1.0">

??<script src="./js/bootstrap.min.js"></script>

? //當(dāng)自定義js文件main.js放在頭部是極有可能出現(xiàn)Uncaught ReferenceError: XXX is not? ? defined, 正確的是應(yīng)該放在body下面

? <script src="./js/main.js"></script>?

? <title>Document</title>

</head>

<body>

</body>

</html>


解決方法有兩種:

1.將function XXX()移到window.onload()=function(){}外面,則HTML加載到<head></head>的時候就會聲明函數(shù)XXX()了,所以進(jìn)行綁定的時候就能夠在內(nèi)存中找到XXX()并進(jìn)行調(diào)用。

2.用var XXX在window.onload()=function(){}外面先進(jìn)行聲明。作用域發(fā)生了變化,就可以進(jìn)行調(diào)用。

來源自:js出現(xiàn)Uncaught ReferenceError: XXX is not defined錯誤的解決辦法-織夢云編程網(wǎng) (dedeyun.com)文章來源地址http://www.zghlxwxcb.cn/news/detail-703650.html

到了這里,關(guān)于js出現(xiàn)Uncaught ReferenceError: XXX is not defined錯誤的解決辦法的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包