JavaScript

Помогите с JavaScript (локальные/глобальные переменные/функции)

Есть код:
function fun (block1, block2, block3, block4) {
var summa = Number(block1) + Number(block2) + Number(block3) + Number(block4);
return block1, block2, block3, block4;
}
var block1 = prompt('Число 1: ');
var block2 = prompt('Число 2: ');
var block3 = prompt('Число 3: ');
var block4 = prompt('Число 4: ');
document.write('Сумма введенных чисел равна: ' + СЮДА ВЫВЕСТИ summa);

Как вывести в document.write сумму подсчитанную в локальной переменной summa / как вывести в глобальный.
Keri En
Keri En
713
Nicolai Bednov
Nicolai Bednov
5 210
Лучший ответ
Keri En Спасибо
1. вернуть ее из функции.
2. сделать глобальной
Keri En а как объясните
Глобальные переменные-зло!
Владимир *
Владимир *
13 852
Keri En почему
Владимир Киселев (Младший) Да, потому-то их в JavaScript и не бывает.
// объявляем и инициализируем переменные
var block1 = 'Число 1',
block2 = 'Число 2',
block3 = 'Число 3',
block4 = 'Число 4';

// записываем переменные в 1 массив
var array = [block1,block2,block3,block4];

// регулярное выражение
var regular = /\d+/;

/* *****ГЛОБАЛЬНАЯ****** */

// запускаем цикл
// проходимся по каждому элементу массива
// выносим числа и преобразуем строчный элемент в числовой и перезаписываем массив
for(var i = 0; i < array.length; i++){
array[i] = Number(regular.exec(array[i]));
}

// объявляем и инициализируем переменную summa_global
var summa_global = array[0] + array[1] + array[2] + array[3];

// ВЫВОДИМ ГЛОБАЛЬНУЮ ПЕРЕМЕННУЮ
document.write('ГЛОБАЛЬНАЯ - Сумма введенных чисел равна: ' + summa_global + '
');

/* *****ЛОКАЛЬНАЯ****** */

// создаем функцию
function fun (block1, block2, block3, block4) {
// объявляем и инициализируем локальную переменную
var array = [block1,block2,block3,block4];

// проходимся по каждому элементу массива, выносим числа и преобразуем строчный элемент в числовой и перезаписываем массив
for(var i = 0; i < array.length; i++){
array[i] = Number(regular.exec(array[i]));
}

// объявляем и инициализируем переменную summa_global
var summa_local = array[0] + array[1] + array[2] + array[3];

// возвращаем локальную переменную из функции
return summa_local;
}

// инициализация функции
var summa_local = fun(block1,block2,block3,block4);

// ВЫВОД ЛОКАЛЬНОЙ ПЕРЕМЕННОЙ
document.write('ЛОКАЛЬНАЯ - Сумма введенных чисел равна: ' + summa_local + '
');
Андрей Базанов переменные созданные в функции - имеют локальную область видимости если задать
переменную с помощью "var" например: var local = 1;
а если так: global = 1; - то мы получаем глобальную переменную
надеюсь я понятно объяснил)
но лучше так не делать а возвращать из функции с помощью "return", например: return local = 1;