Глобальная переменная - это такая, которая объявлена вне тела какой-либо функции. Кроме этого, в JavaScript есть одна интересная особенность, которая связана с тем, что если создать внутри функции переменную без ключевого слова var, то она тоже будет глобальной. Глобальная переменная в отличие от локальной доступна внутри любой функции.
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>Глобальные и локальные переменные</title>
</head>
<body>
<script type="text/javascript">
var global = 15; // глобальная переменная
var i = 10; // глобальная переменная
function myFunc() {
var i = 5; // локальная переменная, т.к мы ее объявили в функции
// i = 6; // если бы мы написали так. то это было бы обрщение к глобальной ранее объявленной переменной
global++; // глобальная переменная
i++;
}
alert("До вызова global = " + global + ", i = " + i); // 15, 10
myFunc();
alert("После вызова global = " + global + ", i = " + i); // 16, 10
/* Упражнение
Создайте переменную counter, которая изначально должна быть равна 0.
Создайте функцию, которая увеличивает переменную counter на 1 при каждом её вызове.
Создайте функцию, которая через alert() выводит значение переменной counter.
Вызовите 5 раз функцию из 2-го пункта.
Вызовите функцию из 3-го пункта и убедитесь, что она вызовет alert() и выведет там значение 5.
*/
var counter = 0;
function Foo() {
counter++;
}
function Output() {
alert(counter);
}
Foo();
Foo();
Foo();
Foo();
Foo();
Output(); // 5
</script>
</body>
</html>
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>Глобальные и локальные переменные</title>
</head>
<body>
<script type="text/javascript">
var global = 15; // глобальная переменная
var i = 10; // глобальная переменная
function myFunc() {
var i = 5; // локальная переменная, т.к мы ее объявили в функции
// i = 6; // если бы мы написали так. то это было бы обрщение к глобальной ранее объявленной переменной
global++; // глобальная переменная
i++;
}
alert("До вызова global = " + global + ", i = " + i); // 15, 10
myFunc();
alert("После вызова global = " + global + ", i = " + i); // 16, 10
/* Упражнение
Создайте переменную counter, которая изначально должна быть равна 0.
Создайте функцию, которая увеличивает переменную counter на 1 при каждом её вызове.
Создайте функцию, которая через alert() выводит значение переменной counter.
Вызовите 5 раз функцию из 2-го пункта.
Вызовите функцию из 3-го пункта и убедитесь, что она вызовет alert() и выведет там значение 5.
*/
var counter = 0;
function Foo() {
counter++;
}
function Output() {
alert(counter);
}
Foo();
Foo();
Foo();
Foo();
Foo();
Output(); // 5
</script>
</body>
</html>
Комментариев нет:
Отправить комментарий