бесполезный механизм JavaScript?

1

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

function a(){
   var name ="Euler Henrique";
   var age =32;

   return pass;
}


a.pass ="12q3";


alert(a()); 

что дает: ReferenceError: pass не определен

  • 1
    Вы добавляете значение в функцию, а не определяете переменную. Для доступа к pass изнутри функции вам нужно использовать тот же return a.pass;
  • 0
    a.pass - это свойство объекта функции, это не переменная внутри функции - это вообще не переменная.
Теги:

1 ответ

1

Вам нужно указать объект для доступа (фактически функция a).

function a() {
  var name = "Euler Henrique";
  var age = 32;

  return a.pass;
}


a.pass = "12q3";


console.log(a());
  • 0
    Почему не this.pass ?
  • 0
    @connexo - потому что this не имеет значения (если только вы не работаете в строгом режиме, в этом случае это тот объект по умолчанию для среды JS, а не a )
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню