Статическими переменными называются переменные которые сохраняют свое значение между вызовами функции. Javascript не поддерживает статические переменные и нет ключевого слова static.
Но так как функции в javascript также являются объектами, мы можем имитировать статические переменные. Все что надо сделать, так это создать переменную которая будет членом функции и частью объекта соответственно, и ее значение тогда будет сохраняться между вызовами.
Вот простой пример:
Но так как функции в javascript также являются объектами, мы можем имитировать статические переменные. Все что надо сделать, так это создать переменную которая будет членом функции и частью объекта соответственно, и ее значение тогда будет сохраняться между вызовами.
Вот простой пример:
function counterFunction() {
// проверяем не задана ли уже эта переменная значением
if ( typeof (counterFunction.counter) == 'undefined' ) {
// если нет ставим в ноль
counterFunction.counter = 0;
}
// обычный инкремент как пример операции над переменной
alert(++counterFunction.counter);
}