From 55ddd4454665a3c66e3d5b186bc79048468d36e7 Mon Sep 17 00:00:00 2001 From: Alexey Pyltsyn Date: Mon, 15 Mar 2021 14:29:50 +0300 Subject: Auto fixes --- .../build_your_own_function/index.html | 4 +-- .../building_blocks/conditionals/index.html | 4 +-- .../javascript/building_blocks/events/index.html | 12 ++++---- .../building_blocks/image_gallery/index.html | 2 +- .../ru/learn/javascript/building_blocks/index.html | 2 +- .../building_blocks/looping_code/index.html | 20 +++++++------- .../building_blocks/return_values/index.html | 32 +++++++++++----------- .../test_your_skills_colon__functions/index.html | 2 +- 8 files changed, 39 insertions(+), 39 deletions(-) (limited to 'files/ru/learn/javascript/building_blocks') diff --git a/files/ru/learn/javascript/building_blocks/build_your_own_function/index.html b/files/ru/learn/javascript/building_blocks/build_your_own_function/index.html index fab6711d39..f982970afe 100644 --- a/files/ru/learn/javascript/building_blocks/build_your_own_function/index.html +++ b/files/ru/learn/javascript/building_blocks/build_your_own_function/index.html @@ -23,7 +23,7 @@ translation_of: Learn/JavaScript/Building_blocks/Build_your_own_function -

Активное обучение: пострение функции

+

Активное обучение: построение функции

Пользовательская функция, которую мы собираемся построить, будет называться displayMessage(). Она отобразит настраиваемое окно сообщения на веб-странице и будет действовать как настраиваемая замена встроенной в браузер функции alert(). Мы видели эту функцию раньше. Введите следующую команду в консоли JavaScript браузера на любой странице:

@@ -127,7 +127,7 @@ panel.appendChild(closeBtn);
  • Теперь откройте инструменты разработчика браузера на странице примера, перейдите в консоль JavaScript и снова введите эту строку. Вы увидите, что окно появится снова! Теперь у нас есть функция многократного использования, которую мы можем вызвать в любое время.

    -

    Но мы, вероятно, хотим, чтобы оно появлялось в ответ на действия пользователя и системы. В реальном приложении такое окно сообщения, вероятно, будет вызвано в ответ на доступность новых данных или, если произошла ошибка, или, например, если пользователь пытаюется удалить свой профиль («вы уверены в этом?»), или если пользователь добавляет новый контакт и операция успешно завершена и т. д.

    +

    Но мы, вероятно, хотим, чтобы оно появлялось в ответ на действия пользователя и системы. В реальном приложении такое окно сообщения, вероятно, будет вызвано в ответ на доступность новых данных или, если произошла ошибка, или, например, если пользователь пытается удалить свой профиль («вы уверены в этом?»), или если пользователь добавляет новый контакт и операция успешно завершена и т. д.

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

  • diff --git a/files/ru/learn/javascript/building_blocks/conditionals/index.html b/files/ru/learn/javascript/building_blocks/conditionals/index.html index 970c31d43b..25581ae8bb 100644 --- a/files/ru/learn/javascript/building_blocks/conditionals/index.html +++ b/files/ru/learn/javascript/building_blocks/conditionals/index.html @@ -15,7 +15,7 @@ translation_of: Learn/JavaScript/Building_blocks/conditionals
    {{NextMenu("Learn/JavaScript/Building_blocks/Looping_code", "Learn/JavaScript/Building_blocks")}}
    -

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

    +

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

    @@ -34,7 +34,7 @@ translation_of: Learn/JavaScript/Building_blocks/conditionals

    Люди (и животные) принимают какие-либо решения всю жизнь, от малозначимых ("стоит ли мне съесть одну печеньку или две?") до жизнеопределяющих ("стоит ли мне остаться дома и работать на ферме отца или переехать в другую страну и изучать астрофизику?")

    -

    Операторы условия в JavaScript позволяют нам указать разного рода действия в зависимости от выбранного пользователем или системой ответа (например одна печенька или две) и связать его с действием (результатом), например, результатом "съесть одну печеньку" будет "все еще буду чуствовать себя голодным", а результатом "съесть две печеньки" будет "буду чуствовать себя сытым, но мама меня наругает за то, что я съел все сладости". 

    +

    Операторы условия в JavaScript позволяют нам указать разного рода действия в зависимости от выбранного пользователем или системой ответа (например одна печенька или две) и связать его с действием (результатом), например, результатом "съесть одну печеньку" будет "все еще буду чувствовать себя голодным", а результатом "съесть две печеньки" будет "буду чувствовать себя сытым, но мама меня нарушает за то, что я съел все сладости". 

    diff --git a/files/ru/learn/javascript/building_blocks/events/index.html b/files/ru/learn/javascript/building_blocks/events/index.html index c2ed6bbe07..3959adcb60 100644 --- a/files/ru/learn/javascript/building_blocks/events/index.html +++ b/files/ru/learn/javascript/building_blocks/events/index.html @@ -89,7 +89,7 @@ btn.onclick = function() {

    События, как понятие, относятся не только к JavaScript — большинство языков программирования имеют модель событий, способ работы которой часто отличается от модели в JavaScript. Фактически, даже модель событий в JavaScript для веб-страниц отличается от модели событий для просто JavaScript, поскольку используются они в разных средах.

    -

    Например, Node.js — очень популярная среда исполнения JavaScript, которая позволяет разработчикам использовать JavaScript для создания сетевых и серверных приложений. Модель событий Node.js основана на том, что существуют прослушиватели, отслеживающие события, и эмиттеры (передатчики), которые периодически генерируют события. В общем-то, это похоже на модель событий в JavaScript для веб-страниц, но код совсем другой. В этой модели используется функция on() для регистрации прослушивателей событий, и функция once() для регистрации прослушивателя событий, который отключается после первого срабтывания. Хорошим примером использования являются протоколы событий HTTP connect event docs.

    +

    Например, Node.js — очень популярная среда исполнения JavaScript, которая позволяет разработчикам использовать JavaScript для создания сетевых и серверных приложений. Модель событий Node.js основана на том, что существуют прослушиватели, отслеживающие события, и эмиттеры (передатчики), которые периодически генерируют события. В общем-то, это похоже на модель событий в JavaScript для веб-страниц, но код совсем другой. В этой модели используется функция on() для регистрации прослушивателей событий, и функция once() для регистрации прослушивателя событий, который отключается после первого срабатывания. Хорошим примером использования являются протоколы событий HTTP connect event docs.

    Вы также можете использовать JavaScript для создания кросс-браузерных расширений — улучшения функциональности браузера с помощью технологии WebExtensions. В отличии от модели веб-событий здесь свойства прослушивателей событий пишутся в так называемом регистре CamelCase (например, onMessage, а не onmessage) и должны сочетаться с функцией addListener. См. runtime.onMessage page для примера.

    @@ -110,7 +110,7 @@ btn.onclick = function() { document.body.style.backgroundColor = rndCol; } -

    В данной ситауции свойство onclick — это свойство обработчика события. В принципе это обычное свойство кнопки как элемента (наравне с btn.textContent или btn.style), но оно относится к особому типу. Если вы установите его равным какому-нибудь коду, этот код будет запущен при возникновении события (при нажатии на кнопку).

    +

    В данной ситуации свойство onclick — это свойство обработчика события. В принципе это обычное свойство кнопки как элемента (наравне с btn.textContent или btn.style), но оно относится к особому типу. Если вы установите его равным какому-нибудь коду, этот код будет запущен при возникновении события (при нажатии на кнопку).

    Для получения того же результата, Вы также можете присвоить свойству обработчика имя уже описанной функции (как мы видели в статье Создайте свою функцию):

    @@ -247,11 +247,11 @@ etc.

    Другие концепции событий

    -

    Рассмотрим некоторые современные концепции, имеющие отношение к событиям. На данный момент не обязательно понимать их полностью, но предстывление о них поможет лучше понять некоторые модели кода, с которыми вы, вероятно, столкнетесь.

    +

    Рассмотрим некоторые современные концепции, имеющие отношение к событиям. На данный момент не обязательно понимать их полностью, но представление о них поможет лучше понять некоторые модели кода, с которыми вы, вероятно, столкнетесь.

       Объекты событий

    -

    Иногда внутри функции обработчика событий вы можете увидеть параметр, заданный с таким именем, как event, evt или просто e. Называется он объектом события и он автоматически передается обработчикам событий для предоставления дополнительных функций и информации. Например, давайте немного перепишем наш прмер со случайным цветом:

    +

    Иногда внутри функции обработчика событий вы можете увидеть параметр, заданный с таким именем, как event, evt или просто e. Называется он объектом события и он автоматически передается обработчикам событий для предоставления дополнительных функций и информации. Например, давайте немного перепишем наш пример со случайным цветом:

    function bgChange(e) {
       var rndCol = 'rgb(' + random(255) + ',' + random(255) + ',' + random(255) + ')';
    @@ -334,7 +334,7 @@ for (var i = 0; i < divs.length; i++) {
     
     

        Предотвращение поведения по умолчанию

    -

    Иногда бывают ситуации, когда нужно остановить событие, выполняющее то, что оно делает по умолчанию. Наиболее распространенным примером является веб-форма, например, пользовательская форма регистрации. Когда вы вводите данные и нажимаете кнопку отправки, естественное поведение заключается в том, что данные должны быть отправлены на указанную страницу на сервере для обработки, а браузер перенаправлется на страницу с сообщением об успехе (или остаться на той же странице, если другое не указано).

    +

    Иногда бывают ситуации, когда нужно остановить событие, выполняющее то, что оно делает по умолчанию. Наиболее распространенным примером является веб-форма, например, пользовательская форма регистрации. Когда вы вводите данные и нажимаете кнопку отправки, естественное поведение заключается в том, что данные должны быть отправлены на указанную страницу на сервере для обработки, а браузер перенаправляется на страницу с сообщением об успехе (или остаться на той же странице, если другое не указано).

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

    @@ -528,7 +528,7 @@ video.onclick = function() {

    На стадии всплытия происходит полная противоположность:

    diff --git a/files/ru/learn/javascript/building_blocks/image_gallery/index.html b/files/ru/learn/javascript/building_blocks/image_gallery/index.html index a0e1e48cd5..0c75cf24fc 100644 --- a/files/ru/learn/javascript/building_blocks/image_gallery/index.html +++ b/files/ru/learn/javascript/building_blocks/image_gallery/index.html @@ -35,7 +35,7 @@ translation_of: Learn/JavaScript/Building_blocks/Image_gallery

    Для начала скачайте ZIP файл для примера и распакуйте его содержимое у себя на компьютере.

    -

    Замечание: Вы также можете использовать такие сайты как    JSBin или Thimble для выполнения задания. Вы можте скопировать HTML, CSS и JavaScript в один из этих редакторов. Если онлайн редактор, который вы выбрали, не имеет отдельных панелей для JavaScript/CSS, вы можете выставить код в теги <script>/<style> расположенные на самой HTML странице.

    +

    Замечание: Вы также можете использовать такие сайты как    JSBin или Thimble для выполнения задания. Вы можете скопировать HTML, CSS и JavaScript в один из этих редакторов. Если онлайн редактор, который вы выбрали, не имеет отдельных панелей для JavaScript/CSS, вы можете выставить код в теги <script>/<style> расположенные на самой HTML странице.

    Обзор проекта

    diff --git a/files/ru/learn/javascript/building_blocks/index.html b/files/ru/learn/javascript/building_blocks/index.html index 16b54aff16..cdcc1fbb95 100644 --- a/files/ru/learn/javascript/building_blocks/index.html +++ b/files/ru/learn/javascript/building_blocks/index.html @@ -8,7 +8,7 @@ tags: - Знакомство - Модуль - Написание кода - - НаписаниеКода + - Написание Кода - Начинающий - Новичок - Оценивание diff --git a/files/ru/learn/javascript/building_blocks/looping_code/index.html b/files/ru/learn/javascript/building_blocks/looping_code/index.html index 68f82b6d7b..537a6cc04e 100644 --- a/files/ru/learn/javascript/building_blocks/looping_code/index.html +++ b/files/ru/learn/javascript/building_blocks/looping_code/index.html @@ -13,7 +13,7 @@ translation_of: Learn/JavaScript/Building_blocks/Looping_code
    - + @@ -35,7 +35,7 @@ translation_of: Learn/JavaScript/Building_blocks/Looping_code @@ -156,7 +156,7 @@ ctx.fillStyle = 'rgba(255,0,0,0.5)'; ctx.arc(random(WIDTH), random(HEIGHT), random(50), 0, 2 * Math.PI); ctx.fill(); -

    Это множество лишнего кода очень усложнило бы подержку кода в будущем, т.к. если бы вам захотелось что-то изменить, в каждой итерации цикла, пришлось бы изменять все части кода по отдельности. А ещё это усложнаяет поиск ошибок, т.к. если вдруг вы совершите логическую ошибку при описании одной из итераций, придется потратить много времени на ее поиски.

    +

    Это множество лишнего кода очень усложнило бы поддержку кода в будущем, т.к. если бы вам захотелось что-то изменить, в каждой итерации цикла, пришлось бы изменять все части кода по отдельности. А ещё это усложняет поиск ошибок, т.к. если вдруг вы совершите логическую ошибку при описании одной из итераций, придется потратить много времени на ее поиски.

    Правила записи цикла

    @@ -170,7 +170,7 @@ ctx.fill();
    1. Ключевое слово for, за которым следуют круглые скобки.
    2. -
    3. В круглых скобках у нас есть три части, разделенные точой с запятой: +
    4. В круглых скобках у нас есть три части, разделенные точкой с запятой:
      1. Инициализатор — обычно это переменная численного типа, которая увеличивается каждую итерацию, чтобы посчитать количество шагов цикла. Ее также называет счетчиком.
      2. Условие выхода — как упоминалось ранее, определяет, когда цикл должен остановиться. Обычно это выражение с оператором сравнения проверяющим, выполнено ли условие выхода.
      3. @@ -242,7 +242,7 @@ para.textContent = info;
      4. Цикл запускается, пока значение итератора не будет больше длины массива кошек. Это важно - условие выхода показывает когда именно цикл должен работать, а когда нужно выйти из цикла. Поэтому в случае, пока i < cats.lenght по-прежнему возвращает true, цикл будет работать.
      5. Внутри тела цикла мы соединяем текущий элемент цикла (cats[i] это cats[независимо от того, чем i является в данный момент]) с запятой и пробелом. Итак:
          -
        1. В начале, i = 0, поэтому cats[0] + ', ' соеденятся в ("Билл, ").
        2. +
        3. В начале, i = 0, поэтому cats[0] + ', ' соединятся в ("Билл, ").
        4. На втором шаге, i = 1, поэтому cats[1] + ', ' соединятся в ("Макс, ")
        5. И так далее. В конце каждого цикла i увеличится на 1 (i++) , и процесс будет начинаться заново.
        @@ -279,7 +279,7 @@ para.textContent = info;
        -

        Важно: С цкилом for, также как и сдругими циклами, вы должны убедиться что инициализатор (счетчик) и окончательное выражение построены так, что они достигнут условия выхода. Если этого не произойдет, то цикл будет продолжаться вечно. В итоге браузер или заставит его остановиться, или выдаст ошибку. Это называется бесконечным циклом.

        +

        Важно: С циклом for, также как и с другими циклами, вы должны убедиться что инициализатор (счетчик) и окончательное выражение построены так, что они достигнут условия выхода. Если этого не произойдет, то цикл будет продолжаться вечно. В итоге браузер или заставит его остановиться, или выдаст ошибку. Это называется бесконечным циклом.

        Выход из цикла с помощью break

        @@ -368,14 +368,14 @@ btn.addEventListener('click', function() {

        {{ EmbedLiveSample('Hidden_code_3', '100%', 100) }}

          -
        1. Прежде всего у нас определены некоторые переменные: у нас есть массив с контактной информацией, каждый элемент которого это строка, содержащая в себе имя и номер телефона, которые разделенны двоеточием.
        2. +
        3. Прежде всего у нас определены некоторые переменные: у нас есть массив с контактной информацией, каждый элемент которого это строка, содержащая в себе имя и номер телефона, которые разделены двоеточием.
        4. Далее мы применяем обработчик события для кнопки (btn), чтобы при её нажатии запускался код для поиска и отображения результатов.
        5. -
        6. Мы сохраняем значение, введенное в текстовое поле, в переменную  searchName, затем очищаем введеный текст и снова фокусируемся на текстовом поле для нового поиска.
        7. +
        8. Мы сохраняем значение, введенное в текстовое поле, в переменную  searchName, затем очищаем введенный текст и снова фокусируемся на текстовом поле для нового поиска.
        9. Теперь перейдем к интересующей нас части — к циклу for:
            -
          1. Мы начали счетчик с 0, запускаем цикл до тех пор, пока счетчик всё ещё меньше, чем contacts.length, а инкремент i увеличиваем на 1 после каждой иттерации цикла.
          2. +
          3. Мы начали счетчик с 0, запускаем цикл до тех пор, пока счетчик всё ещё меньше, чем contacts.length, а инкремент i увеличиваем на 1 после каждой итерации цикла.
          4. Внутри цикла мы сначала разделяем текущий контакт (contacts[i]) на символе двоеточия, и сохраняем полученные два значения в массиве с  названием splitContact.
          5. -
          6. Затем мы используем условный оператор, чтобы проверить, равно ли splitContact[0] (имя контакта) введеному searchName. Если это так, мы выводим строку в абзац, чтобы сообщить, каков номер контакта, и используем break для завершения цикла.
          7. +
          8. Затем мы используем условный оператор, чтобы проверить, равно ли splitContact[0] (имя контакта) введенному searchName. Если это так, мы выводим строку в абзац, чтобы сообщить, каков номер контакта, и используем break для завершения цикла.
        10. diff --git a/files/ru/learn/javascript/building_blocks/return_values/index.html b/files/ru/learn/javascript/building_blocks/return_values/index.html index 016321c969..3e3ebcfd8e 100644 --- a/files/ru/learn/javascript/building_blocks/return_values/index.html +++ b/files/ru/learn/javascript/building_blocks/return_values/index.html @@ -1,5 +1,5 @@ --- -title: Возвращаемое значение функции +title: Возвращаемое значение ффункции slug: Learn/JavaScript/Building_blocks/Return_values translation_of: Learn/JavaScript/Building_blocks/Return_values --- @@ -7,7 +7,7 @@ translation_of: Learn/JavaScript/Building_blocks/Return_values
          {{PreviousMenuNext("Learn/JavaScript/Building_blocks/Build_your_own_function","Learn/JavaScript/Building_blocks/События", "Learn/JavaScript/Building_blocks")}}
          -

          Для нас в этом курсе имеется еще один важный момент. Посмотрим внимательнее на возвращаемое значение функций. Некоторые функции не возвращают существенное значение после завершения, но некоторые возвращают, и важно понимать что это за значение и как использовать его в своем коде и как сделать так чтобы ваши собственные функции возвращали полезные значения. Мы объясним всё это ниже. 

          +

          Для нас в этом курсе имеется еще один важный момент. Посмотрим внимательнее на возвращаемое значение функций. Некоторые ффункции не возвращают существенное значение после завершения, но некоторые возвращают, и важно понимать что это за значение и как использовать его в своем коде и как сделать так чтобы ваши собственные ффункции возвращали полезные значения. Мы объясним всё это ниже. 

    Требования:Базовые значения компьютерной системы и базовое понимаение HTML и CSS, JavaScript первые шаги.Базовые значения компьютерной системы и базовое понимание HTML и CSS, JavaScript первые шаги.
    Цель:
    @@ -19,7 +19,7 @@ translation_of: Learn/JavaScript/Building_blocks/Return_values - +
    Цели:Понять что такое возвращаямое значение функции и как его использовать.Понять что такое возвращаемое значение ффункции и как его использовать.
    @@ -35,17 +35,17 @@ console.log(newString); // заменяет одну подстроку другой и возвращает // новую строку со сделанными заменами -

    Мы уже видели этот блок кода в нашей первой статье про функции. Мы вызываем функцию replace() на строке myText и передаем ей 2 параметра —  заменяемую подстроку и подстроку, которой будем заменять. Когда функция завершит выполнение, она вернет значение, которым является новая строка со сделанными в ней заменами.  В коде выше мы сохраняем это возвращаемое значение как значение переменной newString.

    +

    Мы уже видели этот блок кода в нашей первой статье про ффункции. Мы вызываем функцию replace() на строке myText и передаем ей 2 параметра —  заменяемую подстроку и подстроку, которой будем заменять. Когда функция завершит выполнение, она вернет значение, которым является новая строка со сделанными в ней заменами.  В коде выше мы сохраняем это возвращаемое значение как значение переменной newString.

    Если Вы посмотрите на функцию replace() на MDN reference page, вы увидите секцию под названием Return value.  Очень важно знать и понимать какие значения возвращаются функциями, так что мы пытаемся включать эту информацию везде, где это возможно.

    -

    Некоторые функции не возвращают значения( на наших reference pages, возвращаемое значение обозначено как void или undefined в таких случаях). Например, в функции displayMessage() которую мы сделали в прошлой статье, в результате выполнения функции не возвращается никакого значения. Функция всего лишь отображает что-то где-то на экране.

    +

    Некоторые ффункции не возвращают значения( на наших reference pages, возвращаемое значение обозначено как void или undefined в таких случаях). Например, в ффункции displayMessage() которую мы сделали в прошлой статье, в результате выполнения ффункции не возвращается никакого значения. Функция всего лишь отображает что-то где-то на экране.

    В основном, возвращаемое значение используется там, где функция является чем-то вроде вспомогательного звена при вычислениях. Вы хотите получить результат, который включает в себя некоторые значения. Эти значения вычисляются функцией, которая возвращает результат так, что он может быть использован в следующих стадиях вычисления.

    Использование возвращаемых значений в ваших собственных функциях

    -

    Чтобы вернуть значение своей функции, вы должны использовать ключевое слово return. Мы видели это в действии недавно - в нашем примере random-canvas-circles.html. Наша функцияdraw()отрисовывает где-то на экране 100 случайных кружков. 

    +

    Чтобы вернуть значение своей ффункции, вы должны использовать ключевое слово return. Мы видели это в действии недавно - в нашем примере random-canvas-circles.html. Наша функцияdraw()отрисовывает где-то на экране 100 случайных кружков. 

    {{htmlelement("canvas")}}:

    @@ -59,7 +59,7 @@ console.log(newString); } } -

    Внутри каждой итерации есть 3 вызова функции random(). Это сделано чтобы сгенерировать случайное значение для текущей координаты x, y и для радиуса. Функция random() принимает 1 параметр (целое число) и возвращает случайное число в диапазоне от 0 до этого числа. Выглядит это вот так: 

    +

    Внутри каждой итерации есть 3 вызова ффункции random(). Это сделано чтобы сгенерировать случайное значение для текущей координаты x, y и для радиуса. Функция random() принимает 1 параметр (целое число) и возвращает случайное число в диапазоне от 0 до этого числа. Выглядит это вот так: 

    function random(number) {
       return Math.floor(Math.random()*number);
    @@ -74,7 +74,7 @@ console.log(newString);
     
     

    Но первую версию написать быстрее и она более компактна.

    -

    Мы возвращаем результат вычисления Math.floor(Math.random()*number) каждый раз когда функция вызывается. Это возвращаемое значение появляется в момент вызова функции и код продолжается. Так, например, если мы выполним следующую строчку:

    +

    Мы возвращаем результат вычисления Math.floor(Math.random()*number) каждый раз когда функция вызывается. Это возвращаемое значение появляется в момент вызова ффункции и код продолжается. Так, например, если мы выполним следующую строчку:

    ctx.arc(random(WIDTH), random(HEIGHT), random(50), 0, 2 * Math.PI);
    @@ -83,7 +83,7 @@ console.log(newString);
    ctx.arc(500, 200, 35, 0, 2 * Math.PI);
     
    -

    Сначала выполняются вызовы функции random(), на место которых подставляются возвращаемые ей значения, а затем выполнятся сама строка.

    +

    Сначала выполняются вызовы ффункции random(), на место которых подставляются возвращаемые ей значения, а затем выполнятся сама строка.

    Активное обучение: наша собственная, возвращающая значение функция

    @@ -108,7 +108,7 @@ function factorial(num) { } return num; }
    - Функции squared() и cubed() довольно очевидны— они возвразают квадрат или куб переданного как параметр числа. Функция factorial() возвращает factorial переданного числа. + Ффункции squared() и cubed() довольно очевидны— они возвращают квадрат или куб переданного как параметр числа. Функция factorial() возвращает factorial переданного числа.
  • Далее мы добавим способ выводить нашу информацию введенным в  text input числе. Добавьте обработчик событий ниже существующих функций:
    input.onchange = function() {
       var num = input.value;
    @@ -124,10 +124,10 @@ function factorial(num) {
       

    Здесь мы создаем обработчик событий onchange  который срабатывает когда меняется когда новое значение вводится в text input и подтверждается (введите значение и, например, нажмите tab). Когда анонимная функция срабатывает, введенное в input значение сохраняется в переменной num .

  • -

    Далее мы делаем условный тест — если введенное значение не является чилом, мы выводим в параграф сообщение об ошибке . Тест смотрит возвращает ли выражение isNaN(num)  true. Мы используем функцию isNaN() чтобы проверить что значение переменной num не число — если так то функция возвращаетtrue, если нет- false.

    +

    Далее мы делаем условный тест — если введенное значение не является числом, мы выводим в параграф сообщение об ошибке . Тест смотрит возвращает ли выражение isNaN(num)  true. Мы используем функцию isNaN() чтобы проверить что значение переменной num не число — если так то функция возвращаетtrue, если нет- false.

  • -

    Если тест возвращает false, значение переменной numчисло, и поэтому мы выводим сообщение внутри параграфа о значениях квадрата, куба и факториала числа. Предложение вызывает  функции squared(), cubed() иfactorial() чтобы получить нужные значения. Сохраните Ваш код, загрузите его в браузере и посмотрите на то что получилось.

    +

    Если тест возвращает false, значение переменной numчисло, и поэтому мы выводим сообщение внутри параграфа о значениях квадрата, куба и факториала числа. Предложение вызывает  ффункции squared(), cubed() иfactorial() чтобы получить нужные значения. Сохраните Ваш код, загрузите его в браузере и посмотрите на то что получилось.

  • @@ -141,20 +141,20 @@ function factorial(num) {

    Заключение

    -

    Функции очень полезны и не смотря на то, что об их синтаксисе и функциональности можно говорить долго, у нас есть довольно понятные статьи для дальнейшего обучения.

    +

    Ффункции очень полезны и не смотря на то, что об их синтаксисе и функциональности можно говорить долго, у нас есть довольно понятные статьи для дальнейшего обучения.

    Если в статье есть что-то что вы не поняли, не стесняйтесь перечитать статью еще раз или свяжитесь с нами для получения помощи.

    Смотрите также

    {{PreviousMenuNext("Learn/JavaScript/Building_blocks/Build_your_own_function","Learn/JavaScript/Building_blocks/Events", "Learn/JavaScript/Building_blocks")}}

    diff --git a/files/ru/learn/javascript/building_blocks/test_your_skills_colon__functions/index.html b/files/ru/learn/javascript/building_blocks/test_your_skills_colon__functions/index.html index 62e1951fdc..8bfb571bcb 100644 --- a/files/ru/learn/javascript/building_blocks/test_your_skills_colon__functions/index.html +++ b/files/ru/learn/javascript/building_blocks/test_your_skills_colon__functions/index.html @@ -4,7 +4,7 @@ slug: 'Learn/JavaScript/Building_blocks/Test_your_skills:_Functions' tags: - JavaScript - Изучение - - Новичек + - Новичок - Функции translation_of: 'Learn/JavaScript/Building_blocks/Test_your_skills:_Functions' --- -- cgit v1.2.3-54-g00ecf