今天在写一个JavaScript demo的时候,定义了一个变量,具体代码如下:
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);
};
在运行的时候不能通过,并且在firebug中提示:SyntaxError: missing ; before statement,百度这个错误也是毫无头绪,说得都是松松散散的。检查了几次错误,都没有发现,感觉自己的代码写得很正确啊。之后找到定位的那一行之后,将 rg-bom这个变量改为 rg之后,就没有这种错误了,原来问题出在这里
看来在JavaScript中定义变量的时候不能定义为这种带有-线的,然后我又把-线改为_,也就是rg_bom,结果也编译通过了,这说明确实是变量的定义有问题
这个时候我想到了一个知识点,也就是JavaScript中标识符的问题,也就是只能是数字,字母,$ 和下划线,原来如此。看来自己的基础还是太过薄弱啊。借此记录一下这个错误。其实发生这个错误一般是基础的语法问题,仔细检查一下就ok