ошибка при импорте pjsip: нет модуля pjsip

Поскольку ECMA- / Javascript - это все Objects и Contexts (которые также являются некоторыми объектами Object), каждая переменная хранится в такой переменной Variable (или в случае функции, объекта активации).

Итак, если вы создаете такие переменные:

var a = 1,
    b = 2,
    c = 3;

В глобальной области контекста (= NO) вы неявно записываете эти переменные в объект Global (= window в браузере).

Доступ к ним можно получить с помощью обозначения «точка» или «скобка»:

var name = window.a;

или

var name = window['a'];

работает только для глобального объекта в этом конкретном экземпляре, поскольку объект Variable Object глобального объекта является объектом window. Внутри контекста функции у вас нет прямого доступа к объекту активации. Например:

function foobar() {
   this.a = 1;
   this.b = 2;

   var name = window['a']; // === undefined
   alert(name);
   name = this['a']; // === 1
   alert(name);
}

new foobar();

new создает новый экземпляр самоопределяемого объекта (контекста). Без new область действия функции также будет global (= окно). В этом примере будут предупреждены undefined и 1 соответственно. Если бы мы заменили this.a = 1; this.b = 2 на:

var a = 1,
    b = 2;

Оба вывода оповещений были бы неопределенными. В этом случае переменные a и b будут храниться в объекте активации из foobar, к которому мы не можем получить доступ (конечно, мы могли бы получить доступ к ним напрямую, вызывая a и b).

0
задан rana hd 16 January 2019 в 14:55
поделиться