You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
the 1st console.log(x); will log out 1 and the second 2.
the scope is block and the console.log will be 1.
Static scoping.
Global scope is the outer most scope, its variables is accessible to all. the other types are only accessible within the function or block.
The difference between let and var is that let allows you to declare variables that are limited in scope to the block, statement, or expression in which they are used, unlike var, which declares a variable globally.
Strict mode is a way to opt in to a restricted variant of JavaScript, thereby implicitly opting-out of sloppy mode. Strict mode introduces a range of restrictions to the language (like disallowing the implicit global variable declaration).
let x = 1; //Global
{
let x = 2; // Block scope
}
console.log(x); // 1
var x = 1; //Global
{
var x = 2; // Global
}
console.log(x); //2
function outerFn(){
let x = 1; // It's in outerFn scope
function log(){
console.log(x);
};
function run(fn){
let x = 100; //It's in run scope
fn();
}
run(log); // 100
};
outerFn(); // 1
let x0 = 0; // Global
function fn1(){
let x1 = 1; // It's in fn1 scope
fn2();
function fn2(){
let x2 = 2; // It's in fn2 scope
fn3();
function fn3(){
let x3 = 3; // It's in fn3 scope
console.log(x0 + " " + x1 + " " + x2 + " " + x3);
};
};
};
fn1(); //0 1 2 3
// Room : Afeaa Taleb , Hana Abdulla , Yousra Yarob , Didam Goran , Helin tayeb
// this is the global scope
//1.
let golabal = "Hana";
// Q2
// let x = 1; // parent scope
// {
// // in block scope child scope
// let x = 2;
// }
// // glabal scope
// console.log(x); // 1
var x = 1;
{
var x = 2;
}
console.log(x); // 2 correct output
//6. What is the difference between let and var defining a variable?
// let is block scoped and var is function scoped
// var is hoisted and let is not
// let is a keyword and var is not
// 5. What is the difference between global scope and other scope types and when do we use the global scope?
// The global scope is the outermost scope and is accessible from any other scope. It is used to define variables that are accessible from any scope. Other scope types are block scope, function scope, and module scope. We use the global scope when we want to define a variable that is accessible from any scope.
x=1 is inner scope because it's inside the outerFn function, x=100 is inner scope because it's inside run function
lexical scoping
the global scope is like the main room, and inside of that room there's a boxes which is the inner scopes, that inner scope connot be accessed by the global scope.
Ahmed Isam | Papula Ali | Dilan Ahmed | Muhammad Sabah | Ara Kardo.
it is a Global Scope.
The scope for Variable X in both Let and Var deceleration are global scope and the console log will bring the variables outside the {} blocks but there is a little detail here. the first console log will print the first let variable value which is 1 , for the VAR it will print 2 as the var is a global declared variable itself and can be re assigned . Also another thing here is, when you console log it it gives an Error as the same variable name is declared twice once by let and the other by var which causes the Error .
is a functional scope and will bring back 1.
4.It is called lexical scoping, also known as static scoping. In lexical scoping, the scope of a variable is determined by its position within the source code
The global scope can be accessed globally in the code, but the other type of scoping can only be accessed within the range of its scope .
let can not be re declared but can be re assigned. On the other hand Var is a global declared variable and can be re declared and re assigned.
a global scope is when we can access a variable everywhere in our program but in a local scope it can only be accessed within a specific scope and cant be accessed from the outside. we use global scope when we need to access a variable everywhere.
Members: Halwest, Aras, Lava, Nooralhussein, Sajad