2 votes

Analyser un tableau Javascript

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 ?

9voto

artlung Points 13433

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 ?

2voto

Pointy Points 172438
  • 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;

1voto

Matt Huggins Points 16854

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'];

1voto

Garrett Points 1534

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é.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X