From 841aae260382e2bf5ebb44d765d8c7301d27caab Mon Sep 17 00:00:00 2001 From: Alexey Istomin Date: Sat, 20 Mar 2021 18:37:44 +0300 Subject: Restore "ё" letter in Russian translation (#239) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * docs(ru): restore ё letter * docs(ru): resolve conflicts * refactor(idea): remove ide folder --- files/ru/webassembly/exported_functions/index.html | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'files/ru/webassembly/exported_functions/index.html') diff --git a/files/ru/webassembly/exported_functions/index.html b/files/ru/webassembly/exported_functions/index.html index c586422de3..d46ae2ad53 100644 --- a/files/ru/webassembly/exported_functions/index.html +++ b/files/ru/webassembly/exported_functions/index.html @@ -14,7 +14,7 @@ translation_of: WebAssembly/Exported_functions

Экспортированные… что?

-

Экспортированные функции это просто JavaScript обертки, которые вызывают функции модуля WebAssembly. При их использовании происходит неявное преобразование типов аргументов функции в типы, с которыми может работать WebAssembly (например, преобразование number в int32). Дальше эти аргументы передаются функции вашего модуля и она вызывается. Результат также преобразовывается и возвращается в JavaScript.

+

Экспортированные функции это просто JavaScript обёртки, которые вызывают функции модуля WebAssembly. При их использовании происходит неявное преобразование типов аргументов функции в типы, с которыми может работать WebAssembly (например, преобразование number в int32). Дальше эти аргументы передаются функции вашего модуля и она вызывается. Результат также преобразовывается и возвращается в JavaScript.

Вы можете получить список экспортированных функций двумя способами:

@@ -23,11 +23,11 @@ translation_of: WebAssembly/Exported_functions
  • Через Instance.exports существующего экземпляра модуля.
  • -

    В любом случае вы получаете одну и туже обертку функции вашего модуля. С точки зрения JavaScript, все экспортированные функции wasm являются функциями JavaScript, но они инкапсулированы экземпляром модуля wasm, и имеют только ограниченный способ доступа к ним.

    +

    В любом случае вы получаете одну и туже обёртку функции вашего модуля. С точки зрения JavaScript, все экспортированные функции wasm являются функциями JavaScript, но они инкапсулированы экземпляром модуля wasm, и имеют только ограниченный способ доступа к ним.

    Пример

    -

    Давайте посмотрим на пример, чтобы прояснить ситуацию (вы можете найти его на GitHub как table-set.html или запустить в своем браузере, и посмотреть текстовое представление модуля wasm):

    +

    Давайте посмотрим на пример, чтобы прояснить ситуацию (вы можете найти его на GitHub как table-set.html или запустить в своём браузере, и посмотреть текстовое представление модуля wasm):

    var otherTable = new WebAssembly.Table({ element: "anyfunc", initial: 2 });
     
    @@ -42,7 +42,7 @@ WebAssembly.instantiateStreaming(fetch('table.wasm'))
       console.log(otherTable.get(1)());
     });
    -

    Здесь мы создаем таблицу otherTable из JavaScript используя конструктор {{jsxref("WebAssembly.Table")}}, после этого мы загружаем модуль table.wasm при помощи функции {{jsxref("WebAssembly.instantiateStreaming()")}}.

    +

    Здесь мы создаём таблицу otherTable из JavaScript используя конструктор {{jsxref("WebAssembly.Table")}}, после этого мы загружаем модуль table.wasm при помощи функции {{jsxref("WebAssembly.instantiateStreaming()")}}.

    Затем мы получаем объект содержащий все функции, экспортированные из экземпляра модуля. Извлекаем ссылки на эти функции через  tbl.get(), вызываем их и выводим результат работы в консоль. Затем мы используем set() чтобы таблица  otherTable содержала ссылки на те же функции, что и таблица tbl.

    @@ -52,7 +52,7 @@ WebAssembly.instantiateStreaming(fetch('table.wasm'))

    В предыдущем примере возвращаемое значение каждого вызова Table.prototype.get() является экспортированной функцией WebAssembly — это именно то, о чем мы говорили.

    -

    Стоит заметить что помимо того что они являются обертками для функций WebAssembly, это обычные функции JavaScript. Если вы загрузите приведенный выше пример в браузере с поддержкой WebAssembly, и запустите следующие строки в консоли:

    +

    Стоит заметить что помимо того что они являются обёртками для функций WebAssembly, это обычные функции JavaScript. Если вы загрузите приведённый выше пример в браузере с поддержкой WebAssembly, и запустите следующие строки в консоли:

    var testFunc = otherTable.get(0);
     typeof testFunc;
    @@ -70,5 +70,5 @@ typeof testFunc; -- cgit v1.2.3-54-g00ecf