2013-08-20 2 views
1

Это, наверное, невероятно просто, и мой Google-фу просто недостаточно силен. Приносим извинения, если это дубликат.Как получить доступ к объектной литературе из другого свойства?

Рассмотрим буквального следующий объект:

var config = { 
    url: 'http://google.com', 
    message: 'You must go to <a href="' + url + '">Google</a> to search!' 
}; 

Я получаю сообщение об ошибке сказав, что url is not defined. Как получить доступ к элементу url из элемента сообщения?

+1

Короче говоря, вы не сможете в декларации. Вы можете оставить сообщение 'message', а затем добавить его после объявления' config', ссылаясь на 'config.url' – Ian

+0

Хм, что означает _url undefined_ означает? –

+0

@SalmanA, я должен был сказать, что «url не определен». Я отредактировал вопрос. – Cyntech

ответ

3

Я думаю, вы можете обернуть объект config, например.

var config = (function() { 
    var _url = 'http://google.com'; 
    return { 
    url : _url, 
    message : 'You must go to <a href="' + _url + '">Google</a> to search!' 
    } 
})(); 
+0

Спасибо, это решило мою проблему. :) – Cyntech

-1

Вы можете просто сделать это

var config = { 
    url: 'http://google.com', 
    message: function() { return 'You must go to <a href="' + this.url + '">Google</a> to search!' } 
}; 

И позвони

config.message(); 

, чтобы получить сообщение.

Смежные вопросы