J'ai rencontré un problème lors de l'écriture de js aujourd'hui. J'ai une autre page qui doit générer beaucoup de variables. Mais les noms des variables sont différenciés selon différents paramètres.
Par exemple, vous devrez peut-être générer date_1,date_2,datet_3...
(les nombres suivants sont basés sur des paramètres). Donc mon nom de fonction devrait être généré par var name = "test_"+num;
mais c'est là que vient le problème.
Recommandations d'apprentissage associées : Tutoriel vidéo javascript
1 Vous pouvez utiliser window[name] = " " de cette façon Pour définir des variables :
Donc var "test_"+num = 100; C'est définitivement faux. Je l'ai découvert plus tard après avoir demandé à mon frère aîné. Les variables peuvent être définies en utilisant window[name] = 100. Regardez le code
function create_variable(num){ var name = "test_"+num; //生成函数名 window[name] = 100; window['name'] = 200; //注意看中括号里的内容加引号和不加引号的区别 } create_variable(2); alert(test_2); // 100; alert(name); //200;
Résumé
Lorsque la fenêtre utilise des crochets pour définir des variables, le contenu entre crochets doit être une chaîne. S'il s'agit d'une variable, il analysera la variable pour trouver la valeur spécifique.
C'est la différence entre celle-ci et la syntaxe point. Le contenu qui suit la syntaxe point est le nom de la variable à définir. Il n'analysera pas s'il s'agit d'une variable ou autre. Par exemple,
var name = "test" window.name = 200 alert(name); // 200 alert(test); ReferenceError: test is not defined
2 est sous forme d'objet
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 et est sous forme de tableau
var test = []; for(var i = 0; i < 3; i++){ test[i]='我是字符串'+i; console.log(test[i]); //输出:我是字符串0, 我是字符串1, 我是字符串2 } console.log(test[0]); //输出:我是字符串0
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!