Espruino:Справочник по API/Класс E/toJS(): различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
(Новая страница: «{{Espruino/Панель перехода}} {{Перевод от Сubewriter}} {{Myagkij-редактор}} =<ref>[ www.espruino.com - ]</ref>= ==Синтакс...»)
 
Нет описания правки
Строка 3: Строка 3:
{{Myagkij-редактор}}
{{Myagkij-редактор}}


=<ref>[ www.espruino.com - ]</ref>=
=Функция E.toJS()<ref>[https://www.espruino.com/Reference#t_l_E_toJS www.espruino.com - E.toJS]</ref>=


==Синтаксис==
==Синтаксис==


<syntaxhighlight lang="javascript" enclose="div">
<syntaxhighlight lang="javascript" enclose="div">
 
E.toJS(arg)
</syntaxhighlight>
</syntaxhighlight>


==Параметры==
==Параметры==


* '''arg''' – JS-переменная, которую надо преобразовать в строку
==Возвращаемое значение==


Строку.


==Возвращаемое значение==
==Описание==


Выполняет ту же базовую функцию, что и [https://www.espruino.com/Reference#l_JSON_stringify JSON.stringify()], но JSON.stringify() также добавляет несколько дополнительных символов, чтобы соответствовать стандарту [[JSON]], тогда как для JS-переменных эти символы не требуются.


Кроме того, E.toJS() умеет преобразовывать в строки JS-функции, тогда как JSON.stringify() их игнорирует.


==Описание==
Например:


* JSON.stringify({a:1,b:2}) == '{"a":1,"b":2}'
*  E.toJS({a:1,b:2}) == '{a:1,b:2}'


'''Примечание:''' Строки, созданные с помощью E.toJS(), невозможно корректно пропарсить при помощи [https://www.espruino.com/Reference#l_JSON_parse JSON.parse()]. Впрочем, эти строки являются корректными JS-переменными, так что здесь допустимо использование [https://www.espruino.com/Reference#l__global_eval eval()] (но тут есть ограничения по безопасности, если вы не доверяете источнику, из которого пришла строка).
ПК-парсер [https://github.com/json5/json5 JSON5] без проблем парсит строки, сгенерированные с помощью E.toJS().


=См.также=
=См.также=

Версия от 20:54, 6 декабря 2020

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


Функция E.toJS()[1]

Синтаксис

E.toJS(arg)

Параметры

  • arg – JS-переменная, которую надо преобразовать в строку

Возвращаемое значение

Строку.

Описание

Выполняет ту же базовую функцию, что и JSON.stringify(), но JSON.stringify() также добавляет несколько дополнительных символов, чтобы соответствовать стандарту JSON, тогда как для JS-переменных эти символы не требуются.

Кроме того, E.toJS() умеет преобразовывать в строки JS-функции, тогда как JSON.stringify() их игнорирует.

Например:

  • JSON.stringify({a:1,b:2}) == '{"a":1,"b":2}'
  • E.toJS({a:1,b:2}) == '{a:1,b:2}'

Примечание: Строки, созданные с помощью E.toJS(), невозможно корректно пропарсить при помощи JSON.parse(). Впрочем, эти строки являются корректными JS-переменными, так что здесь допустимо использование eval() (но тут есть ограничения по безопасности, если вы не доверяете источнику, из которого пришла строка). ПК-парсер JSON5 без проблем парсит строки, сгенерированные с помощью E.toJS().

См.также

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