Espruino:Справочник по API/Класс Socket/write(): различия между версиями
Myagkij (обсуждение | вклад) (Новая страница: «{{Espruino/Панель перехода}} {{Перевод от Сubewriter}} {{Myagkij-редактор}} =<ref>[ www.espruino.com - ]</ref>= ==Синтакс...») |
Нет описания правки |
||
(не показаны 3 промежуточные версии 2 участников) | |||
Строка 3: | Строка 3: | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
=<ref>[ www.espruino.com - ]</ref>= | =Функция Socket.write()<ref>[https://www.espruino.com/Reference#l_Socket_write www.espruino.com - function Socket.write(data)]</ref>= | ||
==Синтаксис== | ==Синтаксис== | ||
<syntaxhighlight lang="javascript | <syntaxhighlight lang="javascript"> | ||
Socket.write(data) | |||
</syntaxhighlight> | </syntaxhighlight> | ||
==Параметры== | ==Параметры== | ||
* '''data''' – строка, содержащая данные для отправки | |||
==Возвращаемое значение== | |||
== | Булево значение false (для совместимости с Node.js). Когда буфер для отправки данных опустеет, будет сгенерировано событие drain. | ||
==Описание== | |||
Записывает данные из аргумента data в виде строки. Данные в аргументе data (включая массивы) будут преобразованы в строку при помощи стандартного JavaScript-метода toString(). | |||
Если вы хотите отправить двоичные данные, то их нужно будет напрямую преобразовать в строку. Это можно сделать с помощью функции [https://www.espruino.com/Reference#l_String_fromCharCode String.fromCharCode()], хотя зачастую быстрее и проще воспользоваться Espruino-функцией [https://www.espruino.com/Reference#l_E_toString E.toString()], которая считывает свои аргументы как массив байтов и преобразовывает их в строку. | |||
= | <syntaxhighlight lang="javascript"> | ||
socket.write(E.toString([0,1,2,3,4,5])); | |||
</syntaxhighlight> | |||
Если вам нужно отправить не байты, а что-то другое, то можете воспользоваться типизированными массивами или даже объектом DataView: | |||
<syntaxhighlight lang="javascript"> | |||
// 8-байтный объект ArrayBuffer: | |||
var d = new DataView(new ArrayBuffer(8)); | |||
// записываем число с плавающей точкой в байты 0-3: | |||
d.setFloat32(0, 765.3532564); | |||
// записываем int8 в байт 4: | |||
d.setInt8(4, 42); | |||
socket.write(E.toString(d.buffer)) | |||
</syntaxhighlight> | |||
== Примеры == | == Примеры == | ||
Строка 29: | Строка 47: | ||
=См.также= | =См.также= | ||
=Внешние ссылки= | =Внешние ссылки= | ||
Строка 35: | Строка 53: | ||
<references /> | <references /> | ||
{{Навигационная таблица/Espruino | {{Навигационная таблица/Портал/Espruino}} | ||
Текущая версия от 20:00, 23 мая 2023
Функция Socket.write()[1]
Синтаксис
Socket.write(data)
Параметры
- data – строка, содержащая данные для отправки
Возвращаемое значение
Булево значение false (для совместимости с Node.js). Когда буфер для отправки данных опустеет, будет сгенерировано событие drain.
Описание
Записывает данные из аргумента data в виде строки. Данные в аргументе data (включая массивы) будут преобразованы в строку при помощи стандартного JavaScript-метода toString().
Если вы хотите отправить двоичные данные, то их нужно будет напрямую преобразовать в строку. Это можно сделать с помощью функции String.fromCharCode(), хотя зачастую быстрее и проще воспользоваться Espruino-функцией E.toString(), которая считывает свои аргументы как массив байтов и преобразовывает их в строку.
socket.write(E.toString([0,1,2,3,4,5]));
Если вам нужно отправить не байты, а что-то другое, то можете воспользоваться типизированными массивами или даже объектом DataView:
// 8-байтный объект ArrayBuffer:
var d = new DataView(new ArrayBuffer(8));
// записываем число с плавающей точкой в байты 0-3:
d.setFloat32(0, 765.3532564);
// записываем int8 в байт 4:
d.setInt8(4, 42);
socket.write(E.toString(d.buffer))
Примеры
См.также
Внешние ссылки