有人知道为什么这段代码不会在JSHint中产生错误吗?
我认为它应该给我一个可变的阴影警告,但我没有得到一个。
我有"容忍变量阴影"因为我使用visual studio插件是假的。
RES.test = function () {
var test, f;
f = function () {
var test;
window.alert(test);
};
};
感谢。
答案 0 :(得分:1)
我也偶然发现了这一点。显然,JSHint开发人员对“阴影”的定义并不是你所期望的。对于他们来说,隐藏来自闭包的变量名称不是阴影。是的,我觉得它也很奇怪: - )
如果你看一下他们的测试套件,他们的意思就像“重新定义”,你在哪里做
var a = 1;
...
var a = 2;
查看他们的测试用例:https://github.com/jshint/jshint/blob/master/tests/stable/unit/fixtures/redef.js