Передача аргументов в функцию [дубликат]

287
05 января 2017, 07:47

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

  • Потеря контекста вызова 3 ответа

Доброго времени суток, возможно будет глупенький вопрос, но охота сделать красиво, сильно не ругайте :)

Имеется, допустим, следующий код, в нем же и вопрос:

function OrderAjax(param) {
    this.emptyDetailPicture = param.emptyDetailPicture;
    this.jsData = param.jsData;
}
OrderAjax.prototype = {
    constructor: OrderAjax,
    renderBasket: function() {
        $.each(this.jsData['items'], function(index, item) {
            //Как вот сюда красиво достать значение this.emptyDetailPicture?
        });
    }
}

Заранее спасибо :)

Answer 1
class OrderAjax {
  constructor({emptyDetailPicture, jsData}){
    this.emptyDetailPicture = emptyDetailPicture;
    this.jsData = jsData;
  }
  renderBasket(){
    $.each(this.jsData['items'], (index, item) => {
      console.log(this.emptyDetailPicture);
      // все дело в стрелочной функции которая сохраняет контекст объявления
        });
  }
}
Answer 2

es5

OrderAjax.prototype = {
    renderBasket: function() {
     $.each(this.jsData['items'], this._ProcessData.bind(this));
    },
    _ProcessData: function(index, item){
        console.log(this.emptyDetailPicture);
    }
}
READ ALSO
Подключение CSS и JS к JSP, выдаваемому через Servlet

Подключение CSS и JS к JSP, выдаваемому через Servlet

Каким образом подключить CSS и JS к формируемому JSP, когда сервлет висит на корне сайта?

1107
Нужно центрировать блок a внутри div

Нужно центрировать блок a внутри div

ЗдравствуйтеЯ делаю сайт и не могу понять, как можно центрировать элементы a внутри div

340
Материалы по css хакам

Материалы по css хакам

Посоветуйте что-нибудь почитать хорошее по cssМой уровень: читал книжки, смотрел курсы, сверстал макетов 10 по psd, всё это было в основном до выхода...

331
Неверный цвет placeholder в FireFox

Неверный цвет placeholder в FireFox

Проблема в том, что при стилизации placeholder в FireFox он имеет отличный цвет, чем в остальных браузерах

423