TypeScript 生成的变量列表中存在重复名称

plicqrtu  于 2022-10-29  发布在  TypeScript
关注(0)|答案(2)|浏览(152)

**类型脚本版本:**2.7.2
**搜索词:**重复的var声明
代码

async function test(r: any) {
    if (r) {
        var a = new Error();
    }
    else if (r)
    {
        var a: Error;
    }
}
{
  "compilerOptions": {
    "noEmitHelpers": true,
    "target": "es5",
    "lib": [ "es6" ]
  }
}

预期行为:

var a;

or

var a_1,a_2;

实际行为:

行“var a,a;“有两个同名的变量。

function test(r) {
    return __awaiter(this, void 0, void 0, function () {
        var a, a;
        return __generator(this, function (_a) {
            if (r) {
                a = new Error();
            }
            else if (r) {
                a = void 0;
            }
            return [2 /*return*/];
        });
    });
}

**Playground链接:**此处链接
相关问题:

此输出会触发闭包编译器错误,这是第一次发现此错误。

ldioqlga

ldioqlga1#

不改变运行时行为,但最好不要复制它

hsgswve4

hsgswve42#

我想在这方面的工作,有人愿意给我指出正确的方向吗?哪个文件查看,等等?谢谢!

相关问题