Как действует ключевое слово «this» в Javascript внутри литерала объекта? [Дубликат]

На этот вопрос уже есть ответ здесь:

Самостоятельные ссылки в объектных литералах / инициализаторах 21 ответ

виделКак этоэтот" работа с ключевыми словами внутри функции?но я неЯ не вижу, что это отвечает на следующие вопросы.

Учитывая этот код:

var MyDate = function(date) {
    this.date = date;
};

var obj1 = {
    foo: new Date(),
    bar: new MyDate(this.foo)  //  this.foo is undefined
};

var obj2 = {};
obj2.foo = new Date();
obj2.bar = new MyDate(this.foo);  //  this.foo is undefined

var obj3 = {
    foo: new Date(),
    bar: new MyDate(obj3.foo)
};

var obj4 = {};
obj4.foo = new Date();
obj4.bar = new MyDate(obj4.foo);

Почему первые две попытки терпят неудачу, а последние две работают? Еслиthis ISN»t привязан к текущему литералу объекта, чтоявляется это связано с?

Ответы на вопрос(4)

Ваш ответ на вопрос