Самовызываемые стрелочные функции

Подскажите в чем отличия и почему вариант со стрелочными функциями не работает?

var obj = {
  a: 10,
  b: (function() {
    return this.a
  })()
}
console.log(obj);

var obj = {
  a: 10,
  b: (() => {
    this.a
  })()
}
console.log(obj);


Ответы (1 шт):

Автор решения: Igor

var obj = { a: 10, b: (function () { return 20; }()) }

подобный код можно ли на стрелочные переписать?Главным условием становится то, что функция должна быть самовызываемая

//var obj = { a: 10, b: (function () { return 20; }()) } 
var obj = { a: 10, b: (() => 20)() };
console.log(obj);

→ Ссылка