如何访问这个数组?

时间:2012-08-22 13:19:54

标签: javascript

这很简单,但我不知道我哪里出错了。能告诉我如何使用返回的数据吗?我一直在打电话 favorites[0].name但我没有回复。

    person.favourites=function(){
       return [
           {
             'name'= 'Gmail',
             'link'= 'www.gmail.com'
           },
           {
              'name': 'Facebook',
              'link': 'www.facebook.com'
           }
       ];
    };

3 个答案:

答案 0 :(得分:4)

favorites不是数组,而是返回数组的函数。你需要调用它:

var x = person.favourites();
alert(x[0].name) // gmail
alert(x[1].link) // www.facebook.com

您也可以更改定义:

person.favourites = [
    {
        'name'= 'Gmail',
        'link'= 'www.gmail.com'
    },
    {
        'name': 'Facebook',
        'link': 'www.facebook.com'
    }
];

例如,通过这种方式,您就可以访问person.favourites[0].name

答案 1 :(得分:0)

您需要使用person.favourites() 调用您的功能,而不是使用person.favourites引用它:

console.log(person.favourites()[0].name);

答案 2 :(得分:0)

如果你真的想用匿名函数创建person.favourites,可以在作业中调用它:

person.favourites=(function(){
       return [
           {
             'name': 'Gmail',
             'link': 'www.gmail.com'
           },
           {
              'name': 'Facebook',
              'link': 'www.facebook.com'
           }
       ];
    })();