Files
liuxingbaoyuandGitHub f431e0cc85 Fix hoisting of function declarations in loops and switch (#17691)
* fix

* fix switch

* Revert "Fix order of `transform-block-scoped-functions` in `preset-env` (#16475)"

This reverts commit 15a3342b39.

* clean

* fix test

* use enter

* fix
2026-01-23 18:36:41 +01:00

46 lines
698 B
JavaScript

var assert = require("assert");
function nonStrictMode(num) {
switch (num) {
case 0:
assert.equal(a(), undefined);
break;
default:
var v = 1;
assert.equal(a(), 1);
function a() {
return v;
}
break;
}
function a() {
return 2;
}
assert.equal(a(), 2);
};
function strictMode(num) {
"use strict";
switch (num) {
case 0:
assert.equal(a(), undefined);
break;
default:
var v = 1;
assert.equal(a(), 1);
function a() {
return v;
}
break;
}
function a() {
return 2;
}
assert.equal(a(), 2);
};
strictMode(1);
nonStrictMode(1);
strictMode(0);
nonStrictMode(0);