* chore(i18n,curriculum): update translations * chore: Italian to italian Co-authored-by: Nicholas Carrigan <nhcarrigan@gmail.com>
2.0 KiB
id, title, challengeType, videoUrl, forumTopicId, dashedName
| id | title | challengeType | videoUrl | forumTopicId | dashedName |
|---|---|---|---|---|---|
| 56533eb9ac21ba0edf2244bf | Ambito locale e funzioni | 1 | https://scrimba.com/c/cd62NhM | 18227 | local-scope-and-functions |
--description--
Le variabili che sono dichiarate all'interno di una funzione, così come i parametri della funzione, hanno un ambito di applicazione (scope) locale. Ciò significa che sono visibili solo all'interno di quella funzione.
Ecco una funzione myTest con una variabile locale chiamata loc.
function myTest() {
var loc = "foo";
console.log(loc);
}
myTest();
console.log(loc);
La chiamata alla funzione myTest() mostrerà la stringa foo nella console. La linea console.log(loc) genererà un errore, perché loc non è definita al di fuori della funzione.
--instructions--
L'editor ha due console.log per aiutarti a vedere cosa sta succedendo. Controlla la console mentre scrivi il codice per vedere come cambia. Dichiara una variabile locale myVar all'interno di myLocalScope ed esegui i test.
Nota: La console mostrerà ancora ReferenceError: myVar is not defined, ma questo non causerà il fallimento dei test.
--hints--
Il codice non dovrebbe contenere una variabile globale myVar.
function declared() {
myVar;
}
assert.throws(declared, ReferenceError);
Dovresti aggiungere una variabile locale myVar.
assert(
/functionmyLocalScope\(\)\{.*(var|let|const)myVar[\s\S]*}/.test(
__helpers.removeWhiteSpace(code)
)
);
--seed--
--seed-contents--
function myLocalScope() {
// Only change code below this line
console.log('inside myLocalScope', myVar);
}
myLocalScope();
// Run and check the console
// myVar is not defined outside of myLocalScope
console.log('outside myLocalScope', myVar);
--solutions--
function myLocalScope() {
// Only change code below this line
var myVar;
console.log('inside myLocalScope', myVar);
}
myLocalScope();
// Run and check the console
// myVar is not defined outside of myLocalScope
console.log('outside myLocalScope', myVar);