nostr:npub1x3azxuysp5vmfer4vgs4jn5tmfcx4ew8sh0qnev7gczljxsr7jwqa3g4el WHY?

Reply to this note

Please Login to reply.

Discussion

Well, in switch, if you are declaring it without bracket, that equals to declaring it into your function, which then creates an error of "Identifies "..." has already been declared".

Because doing this:

```

function () {

switch (...) {

case "1":

let a = 1;

// ....

break;

}

}

```

Is technically almost the same as the following:

```

function () {

let a = 1;

}

```

While it may seems normal, The problem will happen with a code that similar like the following:

```

function () {

switch (...) {

case "1":

let a = 1;

// ....

break;

case "2":

let a = 2;

// ....

break;

}

}

```

You will then get the error `Uncaught SyntaxError: Identifier 'a' has already been declared`.

To fix it, simply put bracket.

The 💡 in the editor basically suggest you to put some safety.