comparison xml/ru/docs/njs/reference.xml @ 2585:7035221dbe37

Documented TextDecoder and TextEncoder in njs Reference.
author Yaroslav Zhuravlev <yar@nginx.com>
date Thu, 13 Aug 2020 21:42:01 +0100
parents cd97adddd757
children 90b32c2c0155
comparison
equal deleted inserted replaced
2584:88b4976778d2 2585:7035221dbe37
7 <!DOCTYPE article SYSTEM "../../../../dtd/article.dtd"> 7 <!DOCTYPE article SYSTEM "../../../../dtd/article.dtd">
8 8
9 <article name="Справочник" 9 <article name="Справочник"
10 link="/ru/docs/njs/reference.html" 10 link="/ru/docs/njs/reference.html"
11 lang="ru" 11 lang="ru"
12 rev="52"> 12 rev="53">
13 13
14 <section id="summary"> 14 <section id="summary">
15 15
16 <para> 16 <para>
17 <link doc="index.xml">njs</link> предоставляет объекты, методы и свойства 17 <link doc="index.xml">njs</link> предоставляет объекты, методы и свойства
675 </para> 675 </para>
676 676
677 </section> 677 </section>
678 678
679 679
680 <section id="textdecoder" name="Text Decoder">
681
682 <para>
683 Объект <literal>TextDecoder</literal>
684 создаёт поток кодовых точек из потока данных
685 (<link doc="changes.xml" id="njs0.4.3">0.4.3</link>).
686 </para>
687
688 <para>
689 <list type="tag">
690
691 <tag-name><literal>TextDecoder([[<value>кодировка</value>],
692 <value>options</value>])</literal></tag-name>
693 <tag-desc>
694 Создаёт новый объект <literal>TextDecoder</literal>
695 для указанной <literal>кодировки</literal>,
696 на данный момент поддерживается только UTF-8.
697 Параметр <literal>options</literal> является
698 словарём <literal>TextDecoderOption</literal> со свойствами:
699
700 <list type="tag">
701
702 <tag-name><literal>fatal</literal></tag-name>
703 <tag-desc>
704 логический флаг, указывающий, что
705 <link id="textdecoder_decode"><literal>TextDecoder.decode()</literal></link>
706 должен вызывать исключение <value>TypeError</value> в случае, если
707 найдена ошибка кодирования, по умолчанию <literal>false</literal>.
708 </tag-desc>
709
710 </list>
711 </tag-desc>
712
713 <tag-name id="textdecoder_encoding"><literal>TextDecoder.prototype.encoding</literal></tag-name>
714 <tag-desc>
715 Возвращает строку с именем кодировки, используемой
716 <link id="textdecoder"><literal>TextDecoder()</literal></link>,
717 только чтение.
718 </tag-desc>
719
720 <tag-name id="textdecoder_fatal"><literal>TextDecoder.prototype.fatal</literal></tag-name>
721 <tag-desc>
722 логический флаг, <literal>true</literal>, если
723 генерируется ошибка для невалидных символов,
724 только чтение.
725 </tag-desc>
726
727 <tag-name id="textdecoder_ignorebom"><literal>TextDecoder.prototype.ignoreBOM</literal></tag-name>
728 <tag-desc>
729 логический флаг, <literal>true</literal>, если
730 игнорируется маркер порядка следования байтов,
731 только чтение.
732 </tag-desc>
733
734 <tag-name id="textdecoder_decode"><literal>TextDecoder.prototype.decode(<value>буфер</value>,
735 [<value>options</value>])</literal></tag-name>
736 <tag-desc>
737 Возвращает строку с текстом,
738 декодированным из <literal>буфера</literal> при помощи
739 <link id="textdecoder"><literal>TextDecoder()</literal></link>.
740 Буфером может быть
741 <literal>ArrayBuffer</literal>.
742 Параметром <literal>options</literal> является
743 словарь <literal>TextDecodeOptions</literal> со свойствами:
744
745 <list type="tag">
746
747 <tag-name><literal>stream</literal></tag-name>
748 <tag-desc>
749 логический флаг, указывающий, что
750 при последующих вызовах <literal>decode()</literal>
751 должны последовать дополнительные данные:
752 <literal>true</literal>, если данные обрабатываются блоками, и
753 <literal>false</literal> для последнего блока
754 или если данные не передаются блоками.
755 По умолчанию <literal>false</literal>.
756 </tag-desc>
757
758 </list>
759 <example>
760 >> (new TextDecoder()).decode(new Uint8Array([206,177,206,178]))
761 αβ
762 </example>
763 </tag-desc>
764
765 </list>
766 </para>
767
768 </section>
769
770
771 <section id="textencoder" name="Text Encoder">
772
773 <para>
774 Объект <literal>TextEncoder</literal>
775 создаёт поток данных в кодировке UTF-8
776 из потока кодовых точек
777 (<link doc="changes.xml" id="njs0.4.3">0.4.3</link>).
778 </para>
779
780 <para>
781 <list type="tag">
782
783 <tag-name><literal>TextEncoder()</literal></tag-name>
784 <tag-desc>
785 Возвращает только что созданный <literal>TextEncoder</literal>,
786 который создаёт поток данных в кодировке UTF-8.
787 </tag-desc>
788
789 <tag-name id="textencoder_encoding"><literal>TextEncoder.prototype.encoding</literal></tag-name>
790 <tag-desc>
791 Возвращает “<value>utf-8</value>”, только для чтения.
792 </tag-desc>
793
794 <tag-name id="textencoder_encode"><literal>TextEncoder.prototype.encode(<value>строка</value>)</literal></tag-name>
795 <tag-desc>
796 Кодирует <literal>строку</literal> в <literal>Uint8Array</literal>,
797 содержащий текст в кодировке UTF-8.
798 </tag-desc>
799
800 <tag-name id="textencoder_encodeinto"><literal>TextEncoder.prototype.encodeInto(<value>строка</value>,
801 <value>uint8Array</value>)</literal></tag-name>
802 <tag-desc>
803 Преобразует <literal>строку</literal> в UTF-8,
804 сохраняет результат в целевом <literal>Uint8Array</literal> и
805 возвращает объект словаря, отражающий прогресс кодирования, со свойствами:
806
807 <list type="tag">
808
809 <tag-name><literal>read</literal></tag-name>
810 <tag-desc>
811 количество блоков кода UTF-16 из исходной строки,
812 преобразованных в UTF-8
813 </tag-desc>
814
815 <tag-name><literal>written</literal></tag-name>
816 <tag-desc>
817 количество байтов, преобразованных в целевом <literal>Uint8Array</literal>
818 </tag-desc>
819
820 </list>
821 </tag-desc>
822
823 </list>
824 </para>
825
826 </section>
827
828
680 <section id="njs_api_timers" name="Timers"> 829 <section id="njs_api_timers" name="Timers">
681 830
682 <para> 831 <para>
683 <list type="tag"> 832 <list type="tag">
684 833