仅 IE 支持使用含中文标点符号的变量名
2015-04-22来源:

标准参考

Javascript 中使用 var 语句来声明变量,变量名(即标识符)需要遵守两条简单的规则:

第一个字符必须是字母、下划线(_)或美圆符号($)。

余下的字符可以是下划线、美圆符号或任何字母或数字字符。

以下都是合法的标识符:

var test;

var $test;

var $1;

var _test;

var 中文字符;

问题描述

IE 中允许变量名中出现 ',' 等中文标点符号,而其他浏览器则不允许。

造成的影响

变量声明可能失败,造成后续代码执行错误。

受影响的浏览器

IE6 IE7 IE8

问题分析

分析以下代码:

var 中国,北京=["海淀","朝阳","东城","西城"];

alert(中国,北京);

以上代码在各浏览器中的运行结果如下:

IE其他浏览器

弹出提示框:海淀,朝阳,东城,西城报语法错误:非法字符

可见:只有 IE 允许变量名中出现中文逗号。

将上述代码中的逗号 ',' 替换为中文顿号 '、',句号 '。' 等,效果一致。

解决方案

避免在变量名(即标识符)中出现中文标点,以保证兼容各浏览器。

更多信息请查看IT技术专栏

推荐信息
Baidu
map