0

我有一个这样的数组:

elements = {
    opinions: ['p31/php/endpoint.php?get=opinions'], // function to call and API endpoint, php/endpoint.php
    top3positive: ['p31/php/endpoint.php?get=top3positive'], // function to call andAPI endpoint, php/endpoint.php
    top3negative: ['p31/php/endpoint.php?get=top3negative'], // function to call andAPI endpoint, php/endpoint.php
};

我如何指向第一个数组。如果我这样做alert(elements[0]);,它不会像我期望的那样返回意见。我究竟做错了什么?

我需要根据其顺序 0、1、2 等指向数组索引。

谢谢

4

2 回答 2

3

{}符号创建对象,而不是数组。因此,它们不是整数索引的,它们的属性必须使用经典的点表示法或使用[].

如果你想要一个数组,这是构建它的正确方法:

elements = [
    'p31/php/endpoint.php?get=opinions', // function to call and API endpoint, php/endpoint.php
    'p31/php/endpoint.php?get=top3positive', // function to call andAPI endpoint, php/endpoint.php
    'p31/php/endpoint.php?get=top3negative', // function to call andAPI endpoint, php/endpoint.php
];

如果您将对象留在问题中,您可以访问例如它的第一个元素,如下所示:

elements.opinions;

或者

elements['opinions'];

微编辑

我在数组中留下了一个尾随逗号,这在现代浏览器中很好,但在旧版 IE 中可能会导致一些问题。只是要清楚:)

于 2013-11-06T22:52:50.020 回答
0

由于您将它们设置为对象,因此您可以通过以下方式访问它们:

elements['opinions'];
elements['top3positive'];
elements['top3negative'];

如果要将它们设置为数组,则:

var elements=['p31/php/endpoint.php?get=opinions','p31/php/endpoint.php?get=top3positive','p31/php/endpoint.php?get=top3negative'];

然后,当您想访问数组中的项目时,您可以执行以下操作:

elements[0];
于 2013-11-06T22:51:39.407 回答