W języku JavaScript nie ma standardu tworzenia "obiektu głównego" ani żadnej wbudowanej metody uzyskiwania dostępu do zmiennych w początkowym zasięgu za pomocą odwołania do napisu, o którym jestem świadomy.
Jeśli jednak używasz JavaScript do tworzenia stron internetowych w przeglądarce, obiekt window
zapewnia pełny dostęp do bieżącego zakresu. Na przykład:
myVar = "This is my var";
if(myVar == window.myVar){
/*
This statement would return true
Because both variables reference
the same string;
*/
}
Metoda ta pozwoli na odniesienie jakiegokolwiek zakresami zmienną bez uczynienia go ciąg, ale można również wykorzystać jako ciąg potrzebne ze wspornikiem ([]
) selektorów.
window['myVar']
Warto wspomnieć, że utrzymanie danych jako zmienną bezpośrednio na bieżącym zakresie pozostawia otwarte zostać ponownie zdefiniowane przez innych skryptów uruchomionych. Zmienna może zostać nadpisana przez nazwy argumentów funkcji, zmienne pętli i po prostu przez przypisanie nowej wartości do tej zmiennej.
Aby temu zaradzić, sugeruję użycie obiektu do przechowywania wszystkich istotnych danych w aplikacji (statyczna i/lub operacyjna). W ten sposób:
$myApp = {
var1 : 'This is Var1',
apply : function(){
alert('Started!');
}
}
//Referencing relative variables
alert($myApp.var1);
Zobacz: http: // stackoverflow.com/questions/724857/how-to-find-javascript-variable-by-its-name –