1

これは簡単ですが、どこが間違っているのかわかりません。返されたデータの使用方法を教えてください。電話をかけています favorites[0].nameが、応答がありません。

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

3 に答える 3

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そうすれば、たとえばにアクセスできます。

于 2012-08-22T13:21:34.650 に答える
0

匿名関数を使用して本当に作成したい場合はperson.favourites、割り当て中にそれを呼び出すことができます。

person.favourites=(function(){
       return [
           {
             'name': 'Gmail',
             'link': 'www.gmail.com'
           },
           {
              'name': 'Facebook',
              'link': 'www.facebook.com'
           }
       ];
    })();
于 2012-08-22T13:38:02.817 に答える
0

で参照するのではなく、 を使用して関数を呼び出す必要があります。person.favourites()person.favourites

console.log(person.favourites()[0].name);
于 2012-08-22T13:22:52.080 に答える