課程
/前端開發(fā)
/JavaScript
/CSS3扁平化博客之文章頁及常用組件
我挺好奇老師你寫jquery的時(shí)候?yàn)槭裁辞懊婕觽€(gè)分號(hào)? ;$(function(){}) 打錯(cuò)了還是故意?
2016-11-21
源自:CSS3扁平化博客之文章頁及常用組件 2-1
正在回答
防止文件合并后某行代碼結(jié)尾少了分號(hào)出現(xiàn)語法錯(cuò)誤。舉個(gè)例子:文件一的代碼如下window.addEventListener('load',handler)文件二的代碼如下(function fn(){})()兩個(gè)文件合并后就變成了window.addEventListener('load',handler)(function fn(){})()這樣就會(huì)有語法錯(cuò)誤如果在文件二的前面加一個(gè)分號(hào)window.addEventListener('load',handler);(function fn(){})()語法就正確了。如果文件一末尾加了分號(hào)window.addEventListener('load',handler);;(function fn(){})()這樣也不會(huì)出錯(cuò),加上分號(hào)只是為了確保不會(huì)因?yàn)槟硞€(gè)文件少了分號(hào)而無法運(yùn)行
function開頭會(huì)被解析成函數(shù),是為了表達(dá)一個(gè)函數(shù)表達(dá)式,語法分析器便知道將它作為一個(gè)函數(shù)表達(dá)式去解析而不是函數(shù)聲明。
所以,你也可以加別的或者用括號(hào)包裹
!function(){/*?code?*/}(); ~function(){/*?code?*/}(); -function(){/*?code?*/}(); +function(){/*?code?*/}();
bigggge
舉報(bào)
又一波 CSS3扁平化博客
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2016-11-21
防止文件合并后某行代碼結(jié)尾少了分號(hào)出現(xiàn)語法錯(cuò)誤。舉個(gè)例子:
文件一的代碼如下
window.addEventListener('load',handler)
文件二的代碼如下
(function fn(){})()
兩個(gè)文件合并后就變成了window.addEventListener('load',handler)(function fn(){})()
這樣就會(huì)有語法錯(cuò)誤
如果在文件二的前面加一個(gè)分號(hào)
window.addEventListener('load',handler);(function fn(){})()
語法就正確了。
如果文件一末尾加了分號(hào)
window.addEventListener('load',handler);;(function fn(){})()
這樣也不會(huì)出錯(cuò),加上分號(hào)只是為了確保不會(huì)因?yàn)槟硞€(gè)文件少了分號(hào)而無法運(yùn)行
2017-01-08
function開頭會(huì)被解析成函數(shù),是為了表達(dá)一個(gè)函數(shù)表達(dá)式,語法分析器便知道將它作為一個(gè)函數(shù)表達(dá)式去解析而不是函數(shù)聲明。
所以,你也可以加別的或者用括號(hào)包裹