Heim  >  Artikel  >  Web-Frontend  >  JS definiert das Parsen von mit Zeichenfolgen verketteten Variablen

JS definiert das Parsen von mit Zeichenfolgen verketteten Variablen

coldplay.xixi
coldplay.xixinach vorne
2020-07-14 17:38:173928Durchsuche

JS definiert das Parsen von mit Zeichenfolgen verketteten Variablen

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[&#39;test_&#39;+i]=&#39;我是字符串&#39;+i;
 
    console.log(test[&#39;test_&#39;+i]); //输出:我是字符串0, 我是字符串1, 我是字符串2
  }
console.log(test_0); //输出:ReferenceError: test_0 is not defined
console.log(test[&#39;test_0&#39;]); //输出:我是字符串0

3 und die Form eines Arrays

var test = [];
  for(var i = 0; i < 3; i++){
    test[i]=&#39;我是字符串&#39;+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!

Stellungnahme:
Dieser Artikel ist reproduziert unter:jb51.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen