今天在寫一個(gè)JavaScript demo的時(shí)候,定義了一個(gè)變量,具體代碼如下:
?????? window.onload = function(){
????????????? var panel = document.getElementById('panel');
????????????? var right = document.createElement('div');
????????????? var bottom = document.createElement('div');
????????????? var rg-bom = document.createElement('div');
????????????? right.className = 'right';
????????????? bottom.className = 'bottom';
????????????? rg-bom.className = 'rg-bom';
????????????? panel.appendChild(right);
????????????? panel.appendChild(bottom);
????????????? panel.appendChild(rb-bom);
????????? };
在運(yùn)行的時(shí)候不能通過(guò),并且在firebug中提示:SyntaxError: missing ; before statement,百度這個(gè)錯(cuò)誤也是毫無(wú)頭緒,說(shuō)得都是松松散散的。檢查了幾次錯(cuò)誤,都沒(méi)有發(fā)現(xiàn),感覺(jué)自己的代碼寫得很正確啊。之后找到定位的那一行之后,將 rg-bom這個(gè)變量改為 rg之后,就沒(méi)有這種錯(cuò)誤了,原來(lái)問(wèn)題出在這里
看來(lái)在JavaScript中定義變量的時(shí)候不能定義為這種帶有-線的,然后我又把-線改為_(kāi),也就是rg_bom,結(jié)果也編譯通過(guò)了,這說(shuō)明確實(shí)是變量的定義有問(wèn)題
這個(gè)時(shí)候我想到了一個(gè)知識(shí)點(diǎn),也就是JavaScript中標(biāo)識(shí)符的問(wèn)題,也就是只能是數(shù)字,字母,$ 和下劃線,原來(lái)如此??磥?lái)自己的基礎(chǔ)還是太過(guò)薄弱啊。借此記錄一下這個(gè)錯(cuò)誤。其實(shí)發(fā)生這個(gè)錯(cuò)誤一般是基礎(chǔ)的語(yǔ)法問(wèn)題,仔細(xì)檢查一下就ok