2017-11-04 4 views
-2

Ich habe eine Reihe verschachtelter Funktionen, von denen einige Werte zurückgeben, die ich an den globalen Gültigkeitsbereich ausgeben möchte. Was ist der beste Weg, dies zu tun? Das ist mein Beispiel:Variable von verschachtelter Funktion in globalen Gültigkeitsbereich zurückgeben

function mainFunction(){ 
     function A(){ 
      //somecode 
      return valueA; 
     } 
     function B(){ 
      //somecode 
      return {valueB1: valueB1, valueB2: "N/A"}; 
     } 
     return {Avalue: A(), Bvalue: B().valueB1} 
} 
+0

Ihre Lösung funktioniert derzeit, aber ich nehme an, Sie wollen etwas sauberer? – yuantonito

+0

Ja funktioniert. Welche Antwort erwartest du? –

+0

Viele Dinge "arbeiten", aber ja, ich dachte, es könnte etwas effizienteres geben, an das ich nicht gedacht habe. – kennsorr

Antwort

1

Sie können eine Anweisung Block verwenden und var für Dinge, die Sie teilen möchten und let/konst für private Dinge:

{ 
//private 
const func1 = function(){ 
    return "works"; 
}; 
//public 
var result1 = func1(); 
} 

So können Sie Zugang

console.log(result1); 

aber nicht die Funktion selbst.

Verwandte Themen