Possible Duplicate:
SyntaxError: Unexpected token ILLEGAL在命名空间中使用jQuery的filter()时,导致这些JavaScript错误的原因是什么?
有人可以告诉我为什么这些错误正在发生以及如何解决它们?
/*global $:false */
Blah.BlahBlah = {
findLinks : function() {
"use strict";
$('a').filter(function() {
return !(/https?:\/\/[^\/]*xyz.*/i.test($(this).attr('href')));
}).text("***");
}
};
在JSHint抛出这些错误:
- 10号线:}意外'。
- 第11行:};预期'}'匹配第3行的'{',而是看到';'。
- 第11行:};缺少分号。
铬控制台显示这个错误:
- 未捕获的SyntaxError:意外令牌非法
然而,使用以封装匿名函数代码(JSFiddle)不会引发错误:
/*global $:false */
(function() {
"use strict";
$('a').filter(function() {
return !(/https?:\/\/[^\/]*xyz.*/i.test($(this).attr('href')));
}).text("***");
}());
哪里是第10行? – Ibu
当你从他们的网站上直接复制粘贴时,Jsfiddle复制一个非法字符......用铬打开你的检查员,你会看到它。 – ahren
第一个示例似乎在Google Chrome控制台中正常工作。 – Ivan