解析Javascript数组

时间:2010-05-03 23:54:54

标签: javascript arrays

我有一个数组:{r = 1,g = 4,b = 6}我如何将每个(r,g,b)的值转换为单独的变量?

4 个答案:

答案 0 :(得分:9)

JavaScript没有关联数组。所以这是合法的:

var my_rgb_arr = [1, 4, 6]

或者这可能是合法的:

var my_rgb_obj = { r: 1, g: 4, b: 6 };

访问数组:

my_rgb_arr[0]; // r
my_rgb_arr[1]; // g
my_rgb_arr[2]; // b

对象:

my_rgb_obj.r; // r
my_rgb_obj.g; // g
my_rgb_obj.b; // b

你在跟哪个人打交道?

答案 1 :(得分:2)

  • 那不是数组
  • 那个几乎一个对象常量,但你需要“:”而不是“=”
  • 值已经在单独的变量中,或者如果语法正常

这是实例化“对象常量”并使用属性和值填充它的语法。如果您将该值(整个事物)分配给另一个变量,那么您将能够获得属性。

var rgb = { r: 1, g: 4, b: 6};
var rByItself = rgb.r;

答案 2 :(得分:1)

在Javascript中,{r:1, g:4, b:6}将是一个对象。让我们假装您的对象被声明为:

var obj = {r:1, g:4, b:6};

然后你可以用两种方式检索r,g和b的值。

方法1:

var red = obj.r;
var green = obj.g;
var blue = obj.b;

方法2:

var red = obj['r'];
var green = obj['g'];
var blue = obj['b'];

答案 3 :(得分:1)

您拥有的内容:{r=1, g=4, b=6}只能被解释为ECMAScript中的一个块。因此它不是数组。

数组和对象示例:

var myArray = [1, 4, 6];
var myObject = { r:1, g:4, b:6 };

阻止示例:

var r, g, b;
if(true) 
  {r=1, g=4, b=6};

代码应该是可执行的,如传输的那样,并且代码的结果已发布。