Ich bin heute beim Schreiben von js auf ein Problem gestoßen. Ich habe eine andere Seite, die viele Variablen generieren muss. Die Namen der Variablen unterscheiden sich jedoch nach unterschiedlichen Parametern.
Zum Beispiel müssen Sie möglicherweise date_1,date_2,datet_3...
generieren (die folgenden Zahlen basieren auf Parametern). Mein Funktionsname sollte also von var name = "test_"+num;
generiert werden, aber hier liegt das Problem.
Verwandte Lernempfehlungen: Javascript-Video-Tutorial
1 Sie können window[name] = " " auf diese Weise verwenden So definieren Sie Variablen:
So var "test_"+num = 100; Das ist definitiv falsch. Ich fand es später heraus, nachdem ich meinen ältesten Bruder gefragt hatte. Variablen können mit window[name] = 100 definiert werden. Schauen Sie sich den Code an
function create_variable(num){ var name = "test_"+num; //生成函数名 window[name] = 100; window['name'] = 200; //注意看中括号里的内容加引号和不加引号的区别 } create_variable(2); alert(test_2); // 100; alert(name); //200;
Zusammenfassung
Wenn window Klammern zum Definieren von Variablen verwendet, sollte der Inhalt der Klammern eine Zeichenfolge sein. Wenn es sich um eine Variable handelt, analysiert er die Variable, um den spezifischen Wert zu finden.
Das ist der Unterschied zur Punktsyntax. Der Inhalt nach der Punktsyntax ist der Name der zu definierenden Variablen. Es wird nicht analysiert, ob es sich um eine Variable oder ähnliches handelt. Beispielsweise hat
var name = "test" window.name = 200 alert(name); // 200 alert(test); ReferenceError: test is not defined
2 die Form eines Objekts
var test = {}; for(var i = 0; i < 3; i++){ test['test_'+i]='我是字符串'+i; console.log(test['test_'+i]); //输出:我是字符串0, 我是字符串1, 我是字符串2 } console.log(test_0); //输出:ReferenceError: test_0 is not defined console.log(test['test_0']); //输出:我是字符串0
3 und die Form eines Arrays
var test = []; for(var i = 0; i < 3; i++){ test[i]='我是字符串'+i; console.log(test[i]); //输出:我是字符串0, 我是字符串1, 我是字符串2 } console.log(test[0]); //输出:我是字符串0
Das obige ist der detaillierte Inhalt vonJS definiert das Parsen von mit Zeichenfolgen verketteten Variablen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!