これらのエラーが発生する理由と、それらを修正する方法を誰か教えてもらえますか?
/*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行目: }; セミコロンがありません。
Chrome コンソールに次のエラーが表示されます。
- Uncaught SyntaxError: Unexpected token ILLEGAL
ただし、カプセル化された無名関数でこのコード ( JSFiddle ) を使用しても、エラーはスローされません。
/*global $:false */
(function() {
"use strict";
$('a').filter(function() {
return !(/https?:\/\/[^\/]*xyz.*/i.test($(this).attr('href')));
}).text("***");
}());