JS是單線程執(zhí)行,有兩種可能改變執(zhí)行順序。
十余年的蒼南網(wǎng)站建設(shè)經(jīng)驗(yàn),針對設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。全網(wǎng)整合營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整蒼南建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“蒼南網(wǎng)站設(shè)計(jì)”,“蒼南網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
1、在頁面的某個(gè)地方加上script來修改執(zhí)行順序,比如一段JS代碼是一起執(zhí)行,要修改一部分代碼的執(zhí)行順序,那吧那段代碼單獨(dú)抽取出來,放到你想要的位置。
2、使用定時(shí)器,setTimetou等等方法。
你現(xiàn)在是先定義了函數(shù)a,然后定義了函數(shù)b,然后再去執(zhí)行函數(shù)a
即使你把代碼改成這樣依舊能夠正常運(yùn)行
a();
function?a()?{
b();
}
function?b()?{
console.log(111)
}
因?yàn)镴S運(yùn)行環(huán)境會把定義的代碼(變量/函數(shù))提升到作用域的最前面
javascript代碼和其他服務(wù)器端代碼一樣,都是按順序執(zhí)行的。
但是這里有幾個(gè)代碼跳轉(zhuǎn)的地方:
1、setTimeout / setInterval
這兩個(gè)函數(shù)中的代碼是定時(shí)執(zhí)行,不在順序中;
2、ajax
Ajax一般來說,在 成功/失敗 獲取服務(wù)器端數(shù)據(jù)后會有js代碼來處理接受到的數(shù)據(jù);ajax有兩種情況,分別是同步和異步;同步是指的,js在發(fā)送ajax請求后阻塞代碼執(zhí)行,一直到ajax獲取到服務(wù)器返回?cái)?shù)據(jù),然后繼續(xù)按代碼順序執(zhí)行,也就是說,這種情況下,ajax后面的代碼中可以正常使用ajax返回的數(shù)據(jù);異步是指ajax請求發(fā)送后,代碼跳過ajax,繼續(xù)執(zhí)行其后的代碼,ajax 響應(yīng)代碼在ajax獲取數(shù)據(jù)后執(zhí)行,也就是說,這種情況下,ajax后面的代碼中不能確定ajax的狀態(tài),也不可以ajax返回的數(shù)據(jù)。
按照代碼塊的先后順序關(guān)系,先對代碼塊進(jìn)行預(yù)編譯,再執(zhí)行。代碼塊指的是script標(biāo)簽包含的js片段。具體如下:
step 1. 讀入第一個(gè)代碼塊。
step 2. 做語法分析,有錯(cuò)則報(bào)語法錯(cuò)誤(比如括號不匹配等),并跳轉(zhuǎn)到step5。
step 3. 對var變量和function定義做“預(yù)編譯處理”(永遠(yuǎn)不會報(bào)錯(cuò)的,因?yàn)橹唤馕稣_的聲明)。
step 4. 執(zhí)行代碼段,有錯(cuò)則報(bào)錯(cuò)(比如變量未定義)。
step 5. 如果還有下一個(gè)代碼段,則讀入下一個(gè)代碼段,重復(fù)step2。
step6. 結(jié)束。
分享標(biāo)題:javascript順序,js正序排序
文章出自:http://aaarwkj.com/article32/dsshcpc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、網(wǎng)站收錄、網(wǎng)站制作、品牌網(wǎng)站設(shè)計(jì)、響應(yīng)式網(wǎng)站、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)