Warum schweigt Chrome immer noch, wenn Funktionen in Blöcken im „strengen Modus“ verwendet werden? [Duplikat
Diese Frage hat hier bereits eine Antwort:
Verbietet der strikte Modus Funktionsdeklarationen auf Anweisungsebene? 1 Antwort Ich bin ziemlich neu bei JS"strict mode";
, wenn ich Code benutze wie:
function outer(){
"use strict";
var ctype;
function inner(){
if(ctype!=undefined){
function hello1(){
console.log("hello1");
}
hello1()
}else {
function hello2(){
console.log("hello2");
}
hello2();
}
}
return inner;
}
var inner = outer();
inner();
Ich frage mich, warum Chrome (ver 49) keinen Fehler gibt, aber Node.js kann "SyntaxError: Im strengen Moduscode können Funktionen nur auf oberster Ebene oder unmittelbar in einer anderen Funktion deklariert werden."
Dieser Tisc weist darauf hin, dass mein Chrome einen Fehler melden sollte.