Mercurial > hg > nginx-site
view 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 source
<?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>