Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция save(): различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки
 
(не показаны 3 промежуточные версии 2 участников)
Строка 7: Строка 7:
==Синтаксис==
==Синтаксис==


<syntaxhighlight lang="javascript" enclose="div">
<syntaxhighlight lang="javascript">
function save()
function save()
</syntaxhighlight>
</syntaxhighlight>
Строка 15: Строка 15:
Сохраняет текущее состояние интерпретатора в [[flash-память]] (включая результаты вызова [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция setWatch()|setWatch()]], [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция setInterval()|setInterval()]], [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция pinMode()|pinMode()]] и всех прослушивателей). Это сохраненное состояние будет загружаться автоматически с каждым включением [[Espruino]] или после каждого аппаратного сброса. Посмотреть, что было сохранено с помощью ''save()'', можно при помощи [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция dump()|dump()]].
Сохраняет текущее состояние интерпретатора в [[flash-память]] (включая результаты вызова [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция setWatch()|setWatch()]], [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция setInterval()|setInterval()]], [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция pinMode()|pinMode()]] и всех прослушивателей). Это сохраненное состояние будет загружаться автоматически с каждым включением [[Espruino]] или после каждого аппаратного сброса. Посмотреть, что было сохранено с помощью ''save()'', можно при помощи [[Espruino:Справочник по API/Глобальные методы, переменные и объекты/Функция dump()|dump()]].


'''Примечание:''' Если вы при помощи onInit() уже задали какие-то интервалы и т.д. и уже вызвали onInit() перед ''save()'', то при включении [[Espruino]] будет две копии этих интервалов – сохраненные до и после ''save()'' – что может привести к проблемам.
{{Примечание1|Если вы при помощи onInit() уже задали какие-то интервалы и т.д. и уже вызвали onInit() перед ''save()'', то при включении [[Espruino]] будет две копии этих интервалов – сохраненные до и после ''save()'' – что может привести к проблемам.}}


Более подробно об этом и других способах сохранения состояния интерпретатора читайте в [https://www.espruino.com/Saving этой статье].
Более подробно об этом и других способах сохранения состояния интерпретатора читайте в [https://www.espruino.com/Saving этой статье].
Строка 27: Строка 27:
=См.также=
=См.также=


{{ads}}
 


=Внешние ссылки=
=Внешние ссылки=
Строка 33: Строка 33:
<references />
<references />


{{Навигационная таблица/Espruino}}
{{Навигационная таблица/Портал/Espruino}}
{{Навигационная таблица/Телепорт}}
 
[[Категория:Функция]]

Текущая версия от 09:48, 4 июня 2023

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Функция save()[1]

Синтаксис

function save()

Описание

Сохраняет текущее состояние интерпретатора в flash-память (включая результаты вызова setWatch(), setInterval(), pinMode() и всех прослушивателей). Это сохраненное состояние будет загружаться автоматически с каждым включением Espruino или после каждого аппаратного сброса. Посмотреть, что было сохранено с помощью save(), можно при помощи dump().

Примечание

Если вы при помощи onInit() уже задали какие-то интервалы и т.д. и уже вызвали onInit() перед save(), то при включении Espruino будет две копии этих интервалов – сохраненные до и после save() – что может привести к проблемам.

Более подробно об этом и других способах сохранения состояния интерпретатора читайте в этой статье.

Эта функция выполняется, только когда интерпретатор возвращается в состояние покоя. Например, при выполнении a=1;reset();a=2; в a будет «2».

После включения Espruino начнет работать с того момента, когда вы написали save(). Если вам нужно, чтобы код начал выполняться сразу после загрузки (например, чтобы инициализировать устройства, подключенные к Espruino), добавьте в код функцию onInit() или добавьте в E.on() обработчик событий init вот так: E.on('init', function() { ... ваш код ... });. Теперь этот код будет автоматически выполняться с каждым запуском Espruino.

О том, как сделать так, чтобы программа, сохраненная с помощью save(), не загружалась автоматически, читайте в этой статье.

См.также

Внешние ссылки