diff xml/ru/docs/njs/compatibility.xml @ 2245:87a0e2c73a25

Refactored njs documentation.
author Yaroslav Zhuravlev <yar@nginx.com>
date Mon, 24 Sep 2018 19:10:29 +0300
parents
children b001d6903fc1
line wrap: on
line diff
new file mode 100644
--- /dev/null
+++ b/xml/ru/docs/njs/compatibility.xml
@@ -0,0 +1,242 @@
+<?xml version="1.0"?>
+
+<!--
+  Copyright (C) Nginx, Inc.
+  -->
+
+<!DOCTYPE article SYSTEM "../../../../dtd/article.dtd">
+
+<article name="Совместимость"
+        link="/ru/docs/njs/compatibility.html"
+        lang="ru"
+        rev="1">
+
+<section>
+
+<para>
+njs совместим с
+<link url="http://www.ecma-international.org/ecma-262/5.1/">ECMAScript 5.1</link>
+(строгий режим) c некоторыми расширениями
+<link url="http://www.ecma-international.org/ecma-262/6.0/">ECMAScript 6</link>
+и позже.
+Совместимость находится в стадии развития.
+</para>
+
+</section>
+
+
+<section id="supported" name="Готовая функциональность">
+
+<para>
+<list type="bullet">
+
+<listitem>
+Логические значения, числа, строки, объекты, массивы,
+функции и регулярные выражения
+</listitem>
+
+<listitem>
+ES5.1 операторы, ES7 операторы возведения в степень
+</listitem>
+
+<listitem>
+ES5.1 инструкции: <literal>var</literal>, <literal>if</literal>,
+<literal>else</literal>, <literal>switch</literal>, <literal>for</literal>,
+<literal>for in</literal>, <literal>while</literal>,
+<literal>do while</literal>, <literal>break</literal>,
+<literal>continue</literal>, <literal>return</literal>, <literal>try</literal>,
+<literal>catch</literal>, <literal>throw</literal>, <literal>finally</literal>
+</listitem>
+
+<listitem>
+ES6 методы и свойства <literal>Number</literal> и
+<literal>Math</literal>
+</listitem>
+
+<listitem>
+Методы <literal>String</literal>:
+<list type="bullet">
+
+<listitem>
+ES5.1:
+<literal>fromCharCode</literal>, <literal>concat</literal>,
+<literal>slice</literal>, <literal>substring</literal>,
+<literal>substr</literal>, <literal>charAt</literal>,
+<literal>charCodeAt</literal>, <literal>indexOf</literal>,
+<literal>lastIndexOf</literal>, <literal>toLowerCase</literal>,
+<literal>toUpperCase</literal>, <literal>trim</literal>,
+<literal>search</literal>, <literal>match</literal>, <literal>split</literal>,
+<literal>replace</literal>
+</listitem>
+
+<listitem>
+ES6:
+<literal>fromCodePoint</literal>, <literal>codePointAt</literal>,
+<literal>includes</literal>, <literal>startsWith</literal>,
+<literal>endsWith</literal>, <literal>repeat</literal>
+</listitem>
+
+<listitem>
+нестандартные:
+<literal>bytesFrom</literal> (0.2.3),
+<literal>fromUTF8</literal>, <literal>toUTF8</literal>,
+<literal>fromBytes</literal>, <literal>toBytes</literal>
+</listitem>
+</list>
+
+</listitem>
+
+<listitem>
+Методы <literal>Object</literal>:
+<list type="bullet">
+<listitem>
+ES5.1:
+<literal>create</literal> (поддержка без списка свойств),
+<literal>keys</literal>,
+<literal>defineProperty</literal>,
+<literal>defineProperties</literal>,
+<literal>getOwnPropertyDescriptor</literal>,
+<literal>getPrototypeOf</literal>,
+<literal>hasOwnProperty</literal>,
+<literal>isPrototypeOf</literal>,
+<literal>preventExtensions</literal>,
+<literal>isExtensible</literal>,
+<literal>freeze</literal>,
+<literal>isFrozen</literal>,
+<literal>seal</literal>,
+<literal>isSealed</literal>
+</listitem>
+</list>
+
+</listitem>
+
+<listitem>
+Методы <literal>Array</literal>:
+<list type="bullet">
+<listitem>
+ES5.1:
+<literal>isArray</literal>, <literal>slice</literal>, <literal>splice</literal>,
+<literal>push</literal>, <literal>pop</literal>, <literal>unshift</literal>,
+<literal>shift</literal>, <literal>reverse</literal>, <literal>sort</literal>,
+<literal>join</literal>, <literal>concat</literal>, <literal>indexOf</literal>,
+<literal>lastIndexOf</literal>, <literal>forEach</literal>,
+<literal>some</literal>, <literal>every</literal>, <literal>filter</literal>,
+<literal>map</literal>, <literal>reduce</literal>,
+<literal>reduceRight</literal>
+</listitem>
+
+<listitem>
+ES6:
+<literal>of</literal>, <literal>fill</literal>, <literal>find</literal>,
+<literal>findIndex</literal>
+</listitem>
+
+<listitem>
+ES7: <literal>includes</literal>
+</listitem>
+</list>
+
+</listitem>
+
+<listitem>
+ES5.1 методы <literal>Function</literal>:
+<literal>call</literal>, <literal>apply</literal>, <literal>bind</literal>
+</listitem>
+
+<listitem>
+ES5.1 методы <literal>RegExp</literal>:
+<literal>test</literal>, <literal>exec</literal>
+</listitem>
+
+<listitem>
+ES5.1 методы <literal>Date</literal>
+</listitem>
+
+<listitem>
+ES5.1 объект <literal>JSON</literal>
+</listitem>
+
+<listitem>
+ES5.1 глобальные функции:
+<literal>isFinite</literal>, <literal>isNaN</literal>,
+<literal>parseFloat</literal>, <literal>parseInt</literal>,
+<literal>decodeURI</literal>, <literal>decodeURIComponent</literal>,
+<literal>encodeURI</literal>, <literal>encodeURIComponent</literal>
+</listitem>
+
+<listitem>
+Объекты <literal>Error</literal>:
+<literal>Error</literal>, <literal>EvalError</literal>,
+<literal>InternalError</literal>, <literal>RangeError</literal>,
+<literal>ReferenceError</literal>, <literal>SyntaxError</literal>,
+<literal>TypeError</literal>, <literal>URIError</literal>
+</listitem>
+
+<listitem>
+Функции <literal>setTimeout()</literal> и <literal>clearTimeout()</literal>
+(0.2.0)
+</listitem>
+
+<listitem>
+Методы <literal>File system</literal>
+<link url="https://nodejs.org/api/fs.html#fs_file_system">стиль Node.js</link>:
+<literal>fs.readFile</literal>, <literal>fs.readFileSync</literal>,
+<literal>fs.appendFile</literal>, <literal>fs.appendFileSync</literal>,
+<literal>fs.writeFile</literal>, <literal>fs.writeFileSync</literal>
+</listitem>
+
+<listitem>
+Методы <literal>Crypto</literal>
+<link url="https://nodejs.org/api/crypto.html#crypto_class_hash">стиль Node.js</link>
+(0.2.0):
+<literal>crypto.createHash</literal>,
+<literal>crypto.createHmac</literal>
+</listitem>
+
+</list>
+</para>
+
+</section>
+
+
+<section id="not_supported" name="Функциональность в разработке">
+
+<para>
+<list type="bullet">
+
+<listitem>
+ES6 объявления <literal>let</literal> и <literal>const</literal>
+</listitem>
+
+<listitem>
+labels
+</listitem>
+
+<listitem>
+массив <literal>arguments</literal>
+</listitem>
+
+<listitem>
+функция <literal>eval</literal>
+</listitem>
+
+<listitem>
+конструктор <literal>new Function()</literal>
+</listitem>
+
+<listitem>
+функции <literal>setInterval</literal>,
+<literal>setImmediate</literal>
+</listitem>
+
+<listitem>
+дроби без целой части (<literal>.235</literal>)
+</listitem>
+
+</list>
+</para>
+
+</section>
+
+</article>
+