JavaScript : Вопрос 1 : 17

Какие языковые конструкции в javascript создают scope? Что произойдет при выполнении следующего куска кода?

var a = 90100; 
function someFunc(){ 
  if(false){ 
    var a = 1; 
  } else { 
    var b = 2; 
  } 
  console.log(b); 
  console.log(a); //(1) 
} 
someFunc(); 

 

Уважаемые учащиеся ниже Вы сможете увидеть ответ, перед тем, как ответить, пожалуйста, постарайтесь написать для себя ответ на черновике, и только потом сравните наш ответ с Вашим: 

 

 

Верно ли наше решение?

Ответ:

В javascript только функции создают новый scope.

 
  console.log(i) //i здесь уже будет undefined (ибо hoisting) 
                        //ReferenceError: i is not defined - такого не будет 
 
  for(var i  = 0; i < 2; i++){ 
    //do nothing 
  } 
 


Код в вопросе аналогичен следующему:

var a = 90100; 
function someFunc(){ 
var a; 
var b; 
  if(false){ 
    a = 1; 
  } else { 
    b = 2; 
  } 
  console.log(b); 
  console.log(a); //(1) переменную a переопределили в функции 
} 
someFunc(); 


Результат выполнения:

2 
undefined 

1 балл


© Copyright © 2017 - 2019 Все права защищены. Бесплатное онлайн образование.
  • https://disdik.munabarat.go.id/nusantara/slot/
  • https://dispendik.sidoarjokab.go.id/nuansa/gacor/
  • https://dkpd.grobogan.go.id/jakarta/gacor/
  • https://sbobet88.blog.unsia.ac.id
  • https://pafinusantara.blog.unsia.ac.id/bet88
  • https://idn-poker.blog.unsia.ac.id
  • https://slot777-gacor.blog.unsia.ac.id
  • https://agen-188bet.blog.unsia.ac.id
  • https://situs-slot.blog.unsia.ac.id
  • https://bet88-slot.blog.unsia.ac.id
  • https://2021.kinerja.ekon.go.id/up/slot777
  • https://2021.kinerja.ekon.go.id/halal/bet88
  • https://program-gacor.blog.unsia.ac.id
  • surapati.ac.id
  • untagsby.ac.id
  • kingandiboston.com
  • janeashton.com
  • redbrickcafechester.com
  • villanosdeljazz.com
  • slot