Pull to refresh

Имитация статических переменных в JavaSctipt

Reading time1 min
Views6.3K
Статическими переменными называются переменные которые сохраняют свое значение между вызовами функции. Javascript не поддерживает статические переменные и нет ключевого слова static.
Но так как функции в javascript также являются объектами, мы можем имитировать статические переменные. Все что надо сделать, так это создать переменную которая будет членом функции и частью объекта соответственно, и ее значение тогда будет сохраняться между вызовами.

Вот простой пример:

function counterFunction() {
// проверяем не задана ли уже эта переменная значением
if ( typeof (counterFunction.counter) == 'undefined' ) {
// если нет ставим в ноль
counterFunction.counter = 0;
}

// обычный инкремент как пример операции над переменной
alert(++counterFunction.counter);
}
Tags:
Hubs:
Total votes 10: ↑4 and ↓6-2
Comments27

Articles