Действительно ли goto и деструкторы совместимы?

Вы могли бы использовать какую-то валютную функцию:

    constructor(){
      this.clickHandler = this.clickHandler.bind(this);
    }

    clickHandler(index) {
        return function(e) {
          // do click things
        }.bind(this);
    }

    render(){
      array.map(item,index)=>{
         <input onclick={this.clickHandler(index)} />   //Here i want to pass the item & index as args
      }
}

Вы действительно не можете избежать создания нового обратного вызова функции для каждого index.

17
задан Sled 5 December 2014 в 15:02
поделиться

1 ответ

Да, деструкторы назовут как ожидалось, то же, как будто Вы вышли из объема рано из-за исключения.

Стандарт 6.6/2 (Операторы перехода):

На выходе от объема (однако выполненный), деструкторы называют для всех созданных объектов с продолжительностью автоматического хранения, которые объявляются в том объеме в обратном порядке их объявления.

43
ответ дан 30 November 2019 в 11:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: