ссылка на свойство внутри объекта javascript [дубликат]

303
26 ноября 2017, 16:15

На данный вопрос уже ответили:

  • Привязать контекст правильно JS [дубликат] 1 ответ

Доброго времени. Есть такой вот объект.

  {
    location: {
      x: getRandomNum(300, 900),
      y: getRandomNum(100, 500)
    },
    offer: {
      title: getRandom(offerTitles),
      address: location.x, location.y,
      ....
      ....
    }
  }

Точнее есть массив, состоящий из таких вот объектов. address должна быть строкой со значениями координат. Как я могу получить доступ к location.x, location.y, чтобы прописать свойство offer.address? Сложность в том, что для каждого нового объекта - в location генерируется рандомное значение по-новому.

Answer 1

Замените поля offer, address функциями

function getRandomNum(min, max) { 
  return Math.floor(Math.random() * (max - min)) + min; 
} 
 
var obj = { 
  location: { 
    x: getRandomNum(300, 900), 
    y: getRandomNum(100, 500) 
  }, 
  offer: function() { 
    var obj = this; 
    return { 
      title: 'Title', 
      address: function() { 
        return obj.location.x + ', ' + obj.location.y; 
      } 
    } 
  } 
} 
 
console.log(obj.offer().address());

READ ALSO
JS Window Open как обойти блокировку

JS Window Open как обойти блокировку

Здравствуйте, есть ли актуальный способ обойти блокировку принудительного всплывающего окна браузерами? windowopen('mysite');

306
Как отследить нажатие Enter

Как отследить нажатие Enter

Доброго времени суток

251
Как найти разницу значений в двух двумерных массивах?

Как найти разницу значений в двух двумерных массивах?

Как найти разницу значений в двух двумерных массивах?

281
Открыть новую ссылку в текущие вкладке puppeteer

Открыть новую ссылку в текущие вкладке puppeteer

Как открыть новую ссылку в текущие вкладке puppeteerУ меня алгоритм такой: открываю ссылку -> логин и пароль -> вхожу

378