Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Scope

7/22
Recursos

Aportes 482

Preguntas 52

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Scope Global : todo el mundo.
Scope Local : Las Vegas, y lo que pasa en las vegas, se queda en Las Vegas.

Vídeo para profundizar en el tema de Scope del profe Sacha:

Link: https://www.youtube.com/watch?v=s-7C09ymzK8

Global -> Universo , seria como el todo , las variables son accesibles desde cualquier parte del código.
Local -> Cada Planeta , un mundo distinto , las variables son accesibles en ese mundo , no es visible para los demás mundos.

Resumen : lo que es global se puede acceder desde cualquier parte de tu código , y lo pueden acceder cada mundo , lo que es local solo lo puede acceder cada mundo.😁

Les comparto estas imagenes que hablan sobre el scope.









//El alcance (scope) de una variable puede ser:
//1- Global:
var miNombre = "Diego";

//2- Local:
function nombre(){
    var miApellido = "De Granda";
    console.log(miNombre + " " + miApellido);
}

nombre(); //Devuelve "Diego De Granda"

//En todo el código podemos utilizar la variable global.
//Las variables locales sólo pueden ser accedidas 
//dentro de la función en la que fueron declaradas.

el scope es como una puerta que solo puede abrirse por dentro. de local a global, pero no puede abrirse por fuera es decir de global a local.

**variables globales: ** Pueden ser accedidas desde un scope local o global. las variables globales son definidas fuera de las funciones (Scope global)

_**Scope local: **_Son aquellas variables definidas dentro del cuerpo de la función, estas son solo accedidas desde dentro de la misma función.

Scope Global: variables que pueden ser accedidas y procesadas por cualquier función dentro del código.

Scope: Alcance que tienen las variables en el codigo.

Existen 2 tipos de scopes.

Global: Puede ser llamada a lo largo de nuestro programa.

Local: Solo puede ser llamada dentro del bloque de codigo en el que se declaro.

En lo personal, para no confundirme utilizo: “Var”, “CONST”, y “let”.
Esto, me permite diferenciarlas entre tanto código (más cuando eres principiante).
var: global.
let: Sólo vive dentro del bloque donde fue declarada.
CONST: Es una constante. No cambiará su valor.
Les comparte respuestas de la comunidad:
https://platzi.com/discusiones/1099-fundamentos-javascript-2017/32001-cual-es-la-diferencia-entre-var-let-y-const/

el salto de line es con Shift+enter

Super fácil de entender y mas con esos ejemplos, el scope global es todo el conjunto universo, mientras que el scope local es un conjunto dentro de este universo, el cual puede tener acceso a los elementos del conjunto universo, pero el universo no puede tener acceso a los elementos del conjunto (Scope local).

SCOPE
Es el alcance que tiene las variables.
Existen dos tipos de Scope:
• Scope Global: lo que está en global no puede acceder a lo que está en local.
• Scope Local: lo que está en local puede acceder a lo que está en global.

Por un momento pensé que estaba en el national geographic

A este profe si le entiendo, muy claro todooooo, gracias.

SCOPE

- Es el alcance que tienen que tienen las variables
- Hay dos tipos de scope:
    - GLOBAL: Se accede desde cualquier parte
    - LOCAL: Dentro de una funcion

Un buen desarrollador en JS sabe que es el scope y como funciona 😃

Hola a todos! Acá les comparto mis apuntes para esta clase.
Éxito!

**P.D.: **Iré dejando todos los apuntes en un tutorial, por acá --> https://platzi.com/tutoriales/1814-basico-javascript/9339-guia-completa-curso-basico-de-javascript/

No pido mucho … 😄

IMPRRESIONANTE!!! POR FIN ENTENDI ESTO!! YA ME ESTABA POR RETIRAR DEL TODO CON JS Y DEDICARME MAS AL DISEÑO. PERO ESTE PROFESOS ME HIZO VOLVER

Encontre un Blogpost de hace unos años en donde tambien lo explican:
https://platzi.com/blog/como-funciona-el-scope-en-javascript/

✨ Scope permite determinar el alcance de una variable. Estas pueden ser globales y locales.

El ejemplo de las hormigas. Grande Diego.

En resumen el scope es el alcance que tienen las variables, hay 2 tipos de variables, variables locales y globales.
Las variables locales son las que se encuentran declaradas dentro de las funciones y solo seran usadas dentro de las funciones.
Las variables globales son las que se declararon fuera de las funciones pero si pueden ser usadas dentro de las funciones ya que existen de manera global en todo el codigo

Podemos definir ‘Scope’ como el alcance que tendrá una variable en el código. Además del de las hormigas, el ejemplo que más me funcionó es este: la variable local es como algo que está en tu casa, la variable global es algo que está en la calle: desde tu casa puedes ver lo que está adentro Y lo que está en la calle, pero desde la calle no se puede ver lo que hay dentro de tu casa.

Scope
Es el alcance de una variable, el acceso a ella depende de donde fue declarada.

Scope global:

  • Tendrás acceso a ella desde cualquier parte del código.

  • Es el todo.

Scope local:

  • Sucede cuando declaras la variable dentro de una función

  • Tendrás acceso a ella solo desde la función donde fue declarada

  • Es un pequeño universo dentro del scope global

Resumen: Hay dos tipos de scope, uno GLOBLA y otro LOCAL. El scope global no puede acceder a lo que esta dentro del scope local PERO el scope LOCAL si puede acceder a lo que esta dentro del GLOBAL. Te recomiendo leer el tema anterior de funciones mas los comentarios para enteder a profundidad el SCOPE. Saludos.

Descripción Grafica De Scope & Su Función

//Scope global
var nombre = "Diego";

//Scope local
function fun(){
    var apellido = "Arteaga"; //Scope local
    return nombre + " " + apellido;
}

// fun() va a retornar "Diego Arteaga" desde el codigo se tiene alcance a la variable nombre pero no a apellido.

😀
Scope Global✅

El scope global se genera una ves que nuestro archivo de JavaScript se visualiza en el navegador.

😀
Scope Local✅

El scope local se genera una ves que comenzamos una funcion, adentro de esa función a eso se le llama Scope local.

Scope: Es el alcance de las variables que declaramos. Existe el Scope global y local.

Global: es una variable que tiene un alcance en todo nuestro programa.
Local: es una variable que tiene un alcance limitado, es decir que solo existen dentro de la función que se declara.

Scope: el alcance que tienen las variables

Dos tipos de scope:

  • Global: Donde van a estar las funciones y variables que se puedan usar fuera de las funciones.
  • Local: Variables encontradas dentro de funciones.

Variables globales pueden ser accedidas dentro de las funciones.

Muy buen profe, muy claro

¡Hola! Les comparto mis notas de esta clase 😃

Scope global = Aguila
Scope local = Mosca
" Aguila no caza mosca"
Saludos!

Excelente analogía => Personas y hormigas

si sabia como funciona pero no sabia que se llamaba asi.

Este es un resumen de la clase según lo que yo entendí, espero les sirva

++Que es scope ? ++
es el alcance que tienen las variables (depende mucho de donde declares la variable para saber si vas a tener acceso a ella o no. estas pueden ser declaradas en dos tipos de scope

scope global : Aquí las variables son declaradas fuera de sentencia es decir fuera de cualquier function etc. ( en este caso aunque las variables son declaradas en scope global puedes usarlas también dentro del scope local que veremos ahora )

scope local : el Scope local se forma dentro de alguna función, bloque, ciclo while etc (las variables que dentro de este scope local solamente podrán ser usadas ahí. no puedes usar una variable de scope local en un scope global )

Resumen Clase: Si logramos entender el Scope vamos a evitar muchos problemas a futuro cuando estemos trabajando con código o cuando estemos en un equipo desarrollando algo. Que es el Scope en internet dicen que es el alcance que tienen las variables, pero mirando mas allá es donde se declare e inicies una variable para poder tener acceso a ella o no.
El Scope se inicializa cuando entramos al navegador y cargamos los archivos de JavaScript de nuestro proyecto, esto es un Scope global.
Tenemos dos tipos de Scope que son el Scope global que es como el todo del programa, Y el Scope local que es una parte del scope global. En el Scope global van a existir todas las variables, todas las validaciones, todas las funciones que nosotros tengamos ahí van a existir.
Una vez que nosotros iniciamos una función en ese momento adentro de esa función se generara un Scope local, que quiere decir que todo lo que esta dentro de la función va tener acceso a esto mismo. Desde un Scope local o funiocn podemos tener acceso a una variable que esta en nuestro Scope Global. Desde el Scope global no puede acceder a una variable que eta en un Scope local.

scope humanos
scope hormigas

Muy claro … 😂

Me surgió esta duda y la probé. Que pasa cuando accedemos desde el scope local a una variable del global cuando localmente tenemos una variable del mismo nombre que en global. Se muestra la local por definicion de JS al parecer.

`var nombre=“Fede”;

function mostrar(){

var nombre="Juan";
console.log(nombre);

}

mostrar();`

Juan

`var nombre=“Fede”;

function mostrar(){

var n="Juan";
console.log(nombre);

}

mostrar();`

Fede

En un curso que es dictado por Freddy vega, el nos explica lo mismo y nos dice que podemos declarar un variable fuera de una función y usarla dentro de una función, pero no podemos declarar una variable dentro de una función y usarla fuera de esa función, ya que la variable declarada dentro de una función solo existe dentro de la función

var miNombre = "Rafa"; //Esta variable existirá en todo mi proyecto//
function nombre () {
var miApellido = " Osorio"; //Esta variable solo existe dentro de esta función//
console.log (miNombre + " " + miApellido);
};

Les recomiendo este artículo que está bien detallado sobre scope
https://developer.mozilla.org/en-US/docs/Glossary/Scope

Escope Global: "Todo lo mío es tuyo"
Escope Local: “todo lo tuyo es mío y lo mío es mío”
😃

¿Que es el Scope en JavaScript? … El scope de una variable hace referencia al lugar donde esta va a vivir , o podrá ser accesible. Podríamos decir también que scope es el alcance que determina la accesibilidad de las variables en cada parte de nuestro código.

Para complementar mi aporte:

Estan los Scope Global y Local, y local a su vez se subdivide en dos categorias. Ahora, explicando de manera más acertada:

  • Global scope: son variables que se declaran fuera del bloque de código, bien sea al inicio del navegador o fuera de las funciones.

  • Block scope: son funciones declaradas dentro de bloques de codigo como ciclos, y usan las palabras reservadas let y const.

  • Function scope: son variables accesibles dentro de la funcion, pero no fuera de la misma. Y se declaran con la palabra reservada var.

Adjunto un pequeño resumen visual que hice como apuntes de la clase 😃

Esto tiene que ver con POO, con encapsulamiento 😄

En Scope local podemos acceder a todo lo que está en el Scope global pero en el Scope global no podemos acceder a lo que está dentro de un Scope local

El SCOPE también afecta a una función dentro de otra función.

La función minombre recibe un string y la funcion firstToUpper cambia la primera letra en mayúscula

function minombre(name) {
    name = Toupper(name);

    function firstToUpper(name) {
        return name.charAt(0).toUpperCase()+ name.slice(1)
    }
    return name;
}
console.log(minombre("jossie"));  //"Jossie"
console.log(Toupper("quintero")); //"ReferenceError: Toupper is not defined"

En esta clase entendí el acceso a las variables que jamás entendí muy bien que digamos en la U

Scope local (hormigas) se puede acceder al Scope global (humanos), pero NO se puede del global al local. (ej. Los humanos no robamos comida de las hormigas)

Acabe el curso pero no le entendí al 100 %, me espere un día hasta volver a ver lo que no me quedo claro a velocidad 1.25 y esta super fácil. Se me están aclarando todas mis dudas. Soy el único así???
Bien lo dijo Freddy, no deberías de sentirte mal de repetir un video incluso 20 veces con tal de que te quede claro.

Pequeño vídeo explicando en qué consiste el concepto Scope 🌍

Impresionante, ya conocía del tema sobre el Scope, pero siempre pensé que al declarar con Var la variable inmediatamente quedaría en el entorno global independiente si era declarada dentro de una función. Algo nuevo que aprender 😃 , gracias!

Que buena clase!!

El contexto actual de ejecución. El contexto en el que los valores y las expresiones son “visibles” o pueden ser referenciados. Si una variable u otra expresión no está “en el Scope- alcance actual”, entonces no está disponible para su uso. Los Scope también se pueden superponer en una jerarquía, de modo que los Scope secundarios tengan acceso a los ámbitos primarios, pero no al revés.

Una función sirve como un cierre en JavaScript y, por lo tanto, crea un ámbito, de modo que (por ejemplo) no se puede acceder a una variable definida exclusivamente dentro de la función desde fuera de la función o dentro de otras funciones. Por ejemplo, lo siguiente no es válido:

function exampleFunction() {
    var x = "declarada dentro de la función"; // x solo se puede utilizar en exampleFunction
    console.log("funcion interna");
    console.log(x);
}

console.log(x);  // error

Sin embargo, el siguiente código es válido debido a que la variable se declara fuera de la función, lo que la hace global:

var x = "función externa declarada";


exampleFunction();

function exampleFunction() {
    console.log("funcion interna");
    console.log(x);
}

console.log("funcion externa");
console.log(x);

Fuente: Glosario MDN

En caso que te interese adentrarte en el mundo de las hormigas y ver que alimentos les podriamos tomar! 😁

Los Scope se pueden superponer en una jerarquía, de modo que los Scope secundarios tengan acceso a los ámbitos primarios, pero no al revés.

ese ejemplo de las hormigas lo fue todo, grande Diego

Excelente el ejemplo de las hormigas!!

Qué es el Scope
El scope es el alcance de una variable, puede ser de dos tipos, global y local. Una variable cuyo scope es global se puede acceder desde cualquier parte del código, una local solo desde la función que la contiene. Ejemplo:

var a = 1;
function global() {
 console.log(a);
}
global();
console.log(a);

En ese caso a es una variable global ya que podemos acceder tanto fuera como dentro de una función debido a haberla definido fuera de cualquier función.

function local() {
 var a = 2;
 console.log(a);
}
local();
console.log(a);

En este otro caso, la variable a es local ya que la definimos dentro de la función local(), esto quiere decir que solo podemos acceder a ella dentro dicha función, cuando ejecutamos local() te muestra correctamente 2, mientras que si haces console.log(a) te va a dar error porque a no esta definida, para el scope global esa variable no existe.

Aquí les dejo mi aporte espero les sirva:

/*Viendo scope con var*/

var nombre = "Emiliano"; // = SCOPE GLOBLAL

function fun() {
    var apellido = "Luna"; // =  SCOPE LOCAL
    return nombre + " " + apellido;
}

fun(); /*Me va a devolver `Emiliano Luna` porque mi función fun() está llamando a mi variable global nombre.*/

console.log(apellido); /* En este caso no te va devolver nada porque estás llamando a una variable local */

ese sentimiento de aprender lo que te apasiona no tiene precio❤❤❤❤

Espero mis apuntes les sean de ayuda. 😄

Scope

Si entendemos que es el Scope, podemos evitar muchos problemas a futuro cuando estemos trabajando con código o con un equipo.

El Scope es el alcance que tienen las variables, depende mucho de dónde declaremos e inicialicemos variables, de si vamos a tener acceso a ellas o no.

Scope Global

Cuando estamos trabajando en un archivo de JavaScript y tenemos el código, este código y este archivo se inicializa en el navegador, en ese momento se va a inicializar algo llamado Scope Global. Existen 2 tipos de Scope, el global y el local.

En este Scope Global van a existir todas las variables, todas las validaciones que nosotros tengamos.

En nuestro Scope Global tenemos una variable de nombre que se llama “Iris”

//Scope global
var nombre ="Iris";

Scope Local

En el momento que inicializamos una función, se va a generar algo llamado Scope Local. Quiere decir que solo lo que está adentro de la función va a tener acceso a eso mismo.

Aquí le estamos pidiendo a la función que nos regrese la variable que está en Scope global que se llama “Iris” y la variable que está en local que se llama “Apellido”

function fun() {
var apellido ="Barrios";
return nombre+""+apellido
}

Si yo mando a llamar la función nos regresaria

fun(); //Iris Barrios

Como decíamos, esto pasa porque se genera un Scope local y en este Scope Local podemos tener acceso a las variables que están en Scope Global. Pero esto es muy diferente si en Scope Global intento acceder a las variables de Scope Local, no se podría. Todo lo que está en Global, no puede acceder a lo que está en Local.

Si generaramos un console.log con “Apellido” desde nuestro Scope Global, nos mostraría que no está definido.

function fun(){
var apellido ="Barrios"
return nombre+""+apellido
}
//console.log(apellido); 
//apellido is not defined

Por esto es importante entender que tenemos 2 Scope, Global y Local. Lo que está en Local puede acceder a lo que tenemos en Global. Pero lo que tenemos en Global, no va a poder acceder a lo que tenemos en Local.

Variables Global= Podemos acceder a ella desde cualquier parte del código

Variable Local = solo se puede acceder a ella desde su funcioón

Scope

El alcance que tiene las variables en el código, depende de donde se declare la variable tendrás acceso a ella.

Global: Las variables se pueden acceder desde cualquier parte del código,
Local: Solo es accesible dentro de un bloque de código.

Ejemplo ilustrativo:

SCOPE LOCAL

SCOPE GLOBAL

Excelente forma de explicar.

Existen 2 tipos de Scope:
Global → Inicializa en el Navegador. Es el universo
Local → Reside dentro del Global. Está dentro de la función.

<var miNombre = "Fernando"
function nombre(){
 var miApellido = "Galdos";
 console.log(miNombre + " " + miApellido)
}>

ah ok, Scope hace referencia a la “Accesibilidad” en C# o Java, que la manejas con las palabras reservadas: Private, Public.

Que buena analogia de los humanos y las hormigas.

El scope de una variable hace referencia al lugar donde esta va a vivir , o podrá ser accesible.

Podríamos decir también que scope es el alcance que determina la accesibilidad de las variables en cada parte de nuestro código.

¿Y para qué nos sirve el Scope?

Entender bien el concepto de scope nos ayudará a aumentar el nivel de seguridad ya que delimita quienes tienen acceso y quienes no a determinadas partes de nuestro código, también nos facilitará en la detección y disminución de errores, por ende nuestro código será más robusto.

Tipos de Scope

En Javascript tenemos distintos tipos de Scopes:

Global Scope
Se dice que una variable se encuentra en el scope global cuando está declarada fuera de una función o de un bloque. Vamos a poder acceder a este tipo de variables desde cualquier parte de nuestro código, ya sea dentro o fuera de una función.

Local Scope
Las variables que definimos dentro de una función son variables locales, es decir se encuentran en el Scope local. Esto significa que este tipo de variables van a vivir únicamente dentro de la función en donde las hayamos declarado y si intentamos accederlas fuera de ella, dichas variables no van a estar definidas.

Esto nos permite decidir si queremos una variable solo para una determinada función.

Scope: El contexto en el que los valores y las expresiones son visibles o pueden ser referenciados. Si una variable u otra expresión no está en el Scope- alcance actual, entonces no está disponible para su uso. Los Scope también se pueden superponer en una jerarquía, de modo que los Scope secundarios tengan acceso a los ámbitos primarios, pero no al revés.

Actualmente el Scope en JavaScript es a nivel de llaves, es decir, tu no puedes acceder a una variable que esté declarada dentro de un if por ejemplo desde el scope global

Scope: Es el alcance que tienen las variables. Dependerá de donde se declare y donde se inicialice para tener acceso a ella.

Scope Global: es como el todo, es decir que la variable se puede usar en cualquier parte del codigo.

Scope Local: las variables solo se podrán llamar dentro de esa función.

var miNombre = "Joiler ";

function nombre(){
    var miApellido = "Diaz";
    console.log(miNombre + " " + miApellido);

}

nombre();
VM1414:5 Joiler  Diaz
undefined```

Scope en JavaScript 😄
Es el alcance que tienen las Variables.

Existen 2 tipos de Scope:

  • Scope Global: Todas las variables y funciones que declaremos.
  • Scope Local: Solo lo que esta adentro de la función tiene acceso a si mismo.

La función puede hacer uso del Scope global, pero el Scope local no tiene acceso al Scope Local.

Excelente Clase!

Hola, les comparto mis apuntes para esta clase.

He ahí donde se genera también las diferencias en la manera de declarar una variable, ya sea con var, const o let

Muy buena explicación, con esto queda bien claro el tema del scope de las variables.

Muy buena la explicación 😁

Excelente el ejemplo de las hormigas

Recomiendo hacer este ejercicio


function foo(){
	console.log(a)
    a=5
}
foo()
console.log(a)````
***
`var a = 4
function foo(a){
	console.log(a)
    a=5
}
foo(a)
console.log(a)`

dos puntos por terminar de ver el video :v

No pudo estar mejor explicado.

Espero no confundirlos, aclaro que scope = ámbito.
Cuando tenemos var en el ámbito de bloque (dentro de un if o for), éste expande su alcance al ambito local ( dentro de la misma función pero fuera del if). Cuando usamos let bloqueamos el alcance en donde se este declarando, en este caso dentro del if.

Super interesante saber esta clase de detallitos, de un lugar puedes acceder a otro más de forma contraria no.
Me encantó la explicación, sabía lo práctico, pero no sabía el nombre por el cual se le llamaba... Scope. Progresando en Javascript. PD: AntMan si puede.

global, no accede a local
local, puede acceder a global

Entendi completamente hasta que dio el ejemplo de las hormigas xd

Scope: alcance de una variable, dependiendo de la ubicación de la variable, podrá o no ser accesible. Puede tener un scope de función (local), global.

el ejemplo de las hormigas esta muy bueno 😄

El scope es como una petrushka, para entrar a la variable global solo debes abrir la primera muñeca, para ir a la de funcion debes abrir la siguiente muñeca porque no ves lo que tiene dentro

Muy bien explicado.