J'ai un tableau : {r=1, g=4, b=6} Comment puis-je obtenir la valeur de chaque (r,g,b) dans une variable séparée ?
Réponses
Trop de publicités?JavaScript ne dispose pas de tableaux associatifs. C'est donc légal :
var my_rgb_arr = [1, 4, 6]
Ou cela peut être légal :
var my_rgb_obj = { r: 1, g: 4, b: 6 };
Pour accéder au tableau :
my_rgb_arr[0]; // r
my_rgb_arr[1]; // g
my_rgb_arr[2]; // b
Et l'objet :
my_rgb_obj.r; // r
my_rgb_obj.g; // g
my_rgb_obj.b; // b
Lesquelles ?
- Ce n'est pas un tableau
- C'est presque une constante d'objet, mais vous avez besoin de " :" au lieu de "=".
- Les valeurs sont déjà dans des variables séparées, ou le seraient si la syntaxe était correcte.
C'est la syntaxe pour instancier une "constante objet" et la remplir de propriétés et de valeurs. Si vous attribuez cette valeur (l'ensemble) à un autre alors vous serez en mesure d'obtenir les propriétés.
var rgb = { r: 1, g: 4, b: 6};
var rByItself = rgb.r;
En Javascript, {r:1, g:4, b:6}
serait un objet. Imaginons que votre objet soit déclaré comme tel :
var obj = {r:1, g:4, b:6};
Vous pouvez alors récupérer les valeurs de r, g et b de deux manières.
Méthode 1 :
var red = obj.r;
var green = obj.g;
var blue = obj.b;
Méthode 2 :
var red = obj['r'];
var green = obj['g'];
var blue = obj['b'];
Ce que vous avez : {r=1, g=4, b=6}
ne peut être interprété que comme un bloc en ECMAScript. Il ne s'agit donc pas d'un tableau.
Tableaux et objets Exemple :
var myArray = \[1, 4, 6\];
var myObject = { r:1, g:4, b:6 };
Exemple de bloc :
var r, g, b;
if(true)
{r=1, g=4, b=6};
Le code doit être exécutable, tel que transmis et le résultat de ce code affiché.