我很高兴在Mac OS X上使用道格拉斯·克罗克福德的JSLint并且我的代码通过了,但在我获得了一个Ubuntu Hardy Slicehost服务器并在那里上传了我的代码后,当我尝试在服务器上运行它时,JSLint不再通过。它在包含变音符号的本地化文件上失败。
我收到的错误如下:
Lint at line 1206 character 25: Unsafe character.
"PREVIOUS" : "zur??ck",
Lint at line 1207 character 26: Unsafe character.
"NEXTPAGE" : "vorw??rts",
文件没有改变,我检查了MD5哈希,两者都相同。这是我从部署脚本运行JSLint的方式:
def lint_ok(fn):
return os.system("java org.mozilla.javascript.tools.shell.Main jslint/jslint.js %s" % fn) == 0
有什么想法吗?有什么不同?我检查了环境(env / set),对字符集/编码的唯一引用是“LC_CTYPE = UTF-8”。我尝试将它设置为相同但似乎没有效果。
答案 0 :(得分:3)
对于您的问题,这可能与“不安全字符”有关。见JsLint documentation
有处理的字符 在浏览器中不一致,等等 放入时必须逃脱 字符串。
虽然看起来文件开头的BOM标记会阻止JsLint进一步发展,但我遇到了类似的问题。
JsLint的某个Java端口有一个bugfix here来解决这个问题。