Skip to main content

Javascript: Scope

SCOPE (Visibility, Accessibility)

every file is denoted as a module in js. "use strict" use strict is also scope strict mode on. With strict mode, you can not, for example, use undeclared variables. global scope can be used everywhere
var welcome = 'Welcome to home'; 


Example:
If you ask the phone store employee for a phone model that her store doesn't carry, she will not be able to sell you the phone you want. She only has access to the phones in her store's inventory. You'll have to try another store to see if you can find the phone you're looking for.

scope type: 
  1. Global scope
  2. local scope
  3. functional scope
  4. block scope
The scope is known as lexical scope. Each function has its own scope.
function hi(name){  

//hi is also global scope, accessible in every file

xyz = 'I am global scope';  

//global scope if not declared with var if there is use strict, then it can not be declared

var abc = hello('I am local scope');  
//abc is not global scope, its functional scope also known as local scope
console.log('abc', abc);
return 'Hello ' + name + ' ' + welcome;

Let and Var
if (name === "sinuna"){
let abc = 'sinuna'; 
//let le yo abc ko scope yo block of code ma matra

let abc = 'sinuna'; 
//var le scope bahira ni chalauna milxa
console.log('abc', abc);
var abc = 'xyz';
}else if {
console.log('abc', abc); xyz
} else {
console.log('abc', abc);
}

functional scope (local scope):
//abc can be used until the block of code
}
console.log(hi('sinuna'));

function hello(arg){ 
//hello is global scope hoisting javascript Hoisting is JavaScript's default behavior of moving declarations to the top.

//function use before function declaration is hoisting

//hoisting is a process of moving all the declaration to the top of module (any js file)
return 'Hello ' + arg + ' ' + welcome
}
console.log(hello('nabin')); 

Example 1:
var getName = function(){  //getName is global scope
}

Example 2: 
var getName = function(){
"use strict"
pqr = "I am inside getName";
}
getName();

Comments

Popular posts from this blog

Deploy react app on digitalocean using nginx

Source:  https://www.learnwithjason.dev/blog/deploy-nodejs-ssl-digitalocean/ Source:  https://www.digitalocean.com/community/tutorials/how-to-set-up-nginx-server-blocks-virtual-hosts-on-ubuntu-16-04 Source:  https://www.youtube.com/watch?v=vRrhQwNixlc https://www.youtube.com/watch?v=pyxXCwgWdMw https://dev.to/xarala221/the-easiest-way-to-deploy-a-react-web-application-2l8a 1. Create a new droplet on DigitalOcean. Choose the $5/month option with Ubuntu 16.04.1 x64. Select a region closest to your users. 2. Finally, add your SSH key and ls -la ~/.ssh # This copies the key so you can paste with command + V pbcopy < ~/.ssh/id_rsa.pub # This prints it in the command line for manual copying cat ~/.ssh/id_rsa.pub   3.  Add your SSH key to the droplet Click “Add SSH Key” to save it, then make sure it’s selected, name your droplet, and hit the big “Create” button to get your server online. Your n...

Github Tutorial

GitHub brings together the world's largest community of developers to discover, share, and build better software. Delivered through software as a service(SAAS) business model 2008 by linus (Owner: Microsoft)  #Create New Repository in Github New Repository Add Repository Name and description Public / Private, initialize this repo with Read Me Create repository create a new repository on the command line echo "#test" >> README.md git init git add README.md git commit -m "first commit" git remote add origin https://github.com/sinuna/test.git git push -u origin master …or push an existing repository from the command line git remote add origin https://github.com/sinuna/firstRepository.git git push -u origin master …or import code from another repository You can initialize this repository with code from a Subversion, Mercurial, or TFS project. Initialize Repo $ git init Clone Repo $ git clone https://github.com...

NodeJS: Request and Respose Objects

# req Objects - req - req.body, req.queries, req.validationerrors - res.headers, req.users, req.file, req.assert - req.params, req.checkbody #res Objects - res.send, res.end, res.json, res.render, res.status, res.sendStatus # - .limit(4) //limit only upto 4 docs - skips(3) //skip first 3 docs - exe //query build and then execute, it is also callback function of mongoose. - sort({_id: -1}) //for decending order - populate('userId') //populating data inside the reference.