Методы создают новый контекст выполнения? - PullRequest
0 голосов
/ 23 января 2019

Очевидно, что новый контекст выполнения помещается поверх стека выполнения (порядка) при вызове новой регулярной функции (объявления).

Происходит ли тот же процесс, когда метод, который являетсявызывается значение свойства объекта?

Следующее объявление обычной функции в методе объекта демонстрирует, что подъем выполняется для объявлений обычной функции, даже если он помещен в метод объекта.

var testObj = {
    testMethod: function() {
        withinMethodFunct();
        function withinMethodFunct() {
            alert('hello alien planet...');
        }
    }
}
testObj.testMethod();

Так какWithinMethodFunct () поднят, и мы можем вызвать его до того, как он будет определен, это говорит мне о том, что пространство / среда testMethod () имеет переменный объект (VO), что означает, что он имеет собственный контекст выполнения.

Если этоправда, как бы выглядела эта цепочка прицелов?

Если бы кто-нибудь мог пролить свет на это, это было бы очень признательно.

...