Javascript JSLint:设置控制台时出现只读错误,即使它是';s设置为可写全局
考虑以下代码:Javascript JSLint:设置控制台时出现只读错误,即使它是';s设置为可写全局,javascript,debugging,jslint,Javascript,Debugging,Jslint,考虑以下代码: /*global console:true */ (function () { "use strict"; //set console for browsers without debugger if (!console) { console = { log: function() {} }; } }); 这将抛出一个错误: Error: Problem at line 7 charact
/*global console:true */
(function () {
"use strict";
//set console for browsers without debugger
if (!console) {
console = {
log: function() {}
};
}
});
这将抛出一个错误:
Error:
Problem at line 7 character 9: Read only.
console = {
Problem at line 7 character 9: Stopping. (3% scanned).
然而,console被设置为可写全局,因此它不应该是只读的
有没有关于如何规避或解决这个问题的建议
谢谢。我复制了您的代码并将其尝试到了www.jslint.com,我不得不更改了两件小事,但现在它没有给我任何错误(在“函数”后面添加了一个空格并添加了自调用):
您在哪里尝试过它?如果您使用的是jslint.com网站,并且选中了
假设控制台、警报、
框,请尝试取消选中它。我曾尝试在jslint.com网站上重新设置此选项,但没有成功,除非将true
替换为false
。您是在使用命令行工具还是网站?@bbg,我正在网站上试用。很奇怪,你不能复制它。我又试了一次,但没有成功。啊哈,你是否选中了假设控制台,警报…
框?如果是这样,请尝试取消选中它。@bbg,成功了。我应该考虑一下。非常感谢,太好了。我添加了与答案相同的注释,但现在它只是多余的。在bbg的帮助下,修复了以下问题:“啊哈,你是否选中了假设控制台、警报…框?如果是,请尝试取消选中它。”。
/*global console:true */
(function () {
"use strict";
//set console for browsers without debugger
if (!console) {
console = {
log: function () {}
};
}
}());