JavaScript для начинающих - Darkyel/stepik_answers GitHub Wiki

Оглавление

1. Введение в JavaScript

1.1 В двух словах о JavaScript.

Шаг 2

В каком году язык JavaScript получил свое имя?

1995

Шаг 3

Кто является владельцем торговой марки JavaScript?

Oracle Corporation

Шаг 5

Сопоставьте определения, которые вы узнали на предыдущих шагах.

DOM это модель структурирующая HTML-тэги и позволяющая обращаться к ним по уникальному адресу
BOM это модель структурирующая элементы браузера и позволяющая обращаться к ним по уникальному адресу
JQuery Библиотека JavaScript, упрощающая работу по взаимодействию JavaScript и HTML
JavaScript обладает системой автоматической сборки мусора
Язык Си не обладает системой автоматической сборки мусора

1.2 Внедрение кода, структура программы, комментарии.

Шаг 5

Проверим, как вы усвоили этот урок! Проставьте галочки напротив верных утверждений!

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

Шаг 6

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

function testComment(a, b) { 
    var x;
    x = a * b;
    return x;
}

1.3 Переменные, типы данных.

Шаг 2

Теперь давайте проверим, насколько внимательно вы читали предыдущий шаг.
Отметьте все допустимые варианты именования переменной.

  • Example
  • $example
  • example
  • _example
  • EXAMPLE
  • ExAmple

Шаг 5

В этом тесте вам нужно выбрать все правильные варианты объявления или инициализации переменных.

  • var x = 12;
  • x = 22;

Шаг 7

Посмотрим, как вы усвоили предыдущий текст. Сопоставьте выражения в левой и правой части таблицы!

Объявление "var x;" внутри функции приведет к созданию локальной переменной.
Переменная, объявленная вне функции имеет видимость для всей программы, в которой она объявлена
Выражение внутри функции name = "Victor"; приведет к созданию глобальной переменной, если переменной с таким именем еще не было объявлено
Локальная переменная созданная внутри функции уничтожится при закрытии функции

Шаг 10

В этом тесте вам нужно сопоставить объявления переменных и их тип.

var x; переменная х имеет тип undefined
var x = 5; переменная х имеет тип number
var y = '5'; переменная y имеет тип string
var z = "5"; переменная z имеет тип string
var x = true; переменная х имеет тип boolean
var x = 'true'; переменная х имеет тип string
var y = 0; переменная y имеет тип number
var y = false; переменная y имеет тип boolean
var z = 5; переменная z имеет тип number

Шаг 12

В указанное место напишите код, который поместит значение из переменной a в переменную x.

function testA(a) {         
    var x="";
    x=a
    return x;
}

1.4 Простейшие операции.

Шаг 4

Сопоставьте простейшие операции, указанные в левом столбце с результатами их вычислений, приведенными в правом. Изначальные значения для всех операций: х=6 и y=3;

x=y x = 3; y = 3;
x = x + y x = 9; y = 3;
x = y - x x = -3; y = 3;
x = x * y x = 18; y = 3;
x = x % y x = 0; y = 3;
x = x / y x = 2; y = 3;
x = ++y x = 4; y = 4;
x = y++ x = 3; y = 4;
x = - -y x = 2; y = 2;
x = y- - x = 3; y = 2;

Шаг 6

Сопоставьте результаты вычисления операций присваивания при изначальных значениях х = 6 и y = 3;

x += y x = 9
x -= y x = 3
x *= y x = 18
x /= y x = 2
x %= y x = 0

Шаг 7

В этом задании вам нужно вписать в указанное место код, который будет присваивать переменной "х" значение суммы переменных "a" и "b".
Указанные ниже Sample Input (образец входных данных) и Sample Output (образец выходных данных) - это пример. Они показывают, что при значениях переменных "a" и "b" как в Sample Input, например 2 и 8, ваш результат должен быть такой, как указано в Sample Output. Например, если Sample Input равен 2 и 8, то Sample Output должен быть 10, т.е. сумма первой и второй переменных.
Обратите внимание: вам нигде в этом курсе не нужно использовать console.log или document.write, всегда нужно только вернуть из функции результат с помощью return.

function testSum(a, b) {
   var x;
   x = a + b
   return x;
}

Шаг 9

Отметьте все верные, с вашей точки зрения, ответы при значении x равном 7.

  • Результатом x > 8 будет false
  • Результатом x != 8 будет true
  • Результатом x == 8 будет false
  • Результатом x >= 7 будет true

Шаг 12

Давайте проверим, насколько понятно был описан материал предыдущего шага!

  • При x = 3 и y = 6 результатом операции !(x > y) будет true
  • При x = 3 и y = 6 результатом операции x < 3 && y == 6 будет false
  • При x = 3 и y = 6 результатом операции x == 3 || y > 6 будет true

Шаг 13

В этом задании вам нужно вписать в указанное место код, который будет присваивать переменной "х" удвоенное значение остатка от деления произведения переменных "a" и "b" на их сумму.
Внимание! Частая ошибка: вам не нужно задавать значения переменных a и b, они уже заданы и передаются в аргументы вашей функции. Просто используйте их.

function testOperation(a, b) {
    var x;
    x=2*((a*b)%(a+b))
    return x;
}

1.5 Ветвление.

Шаг 3

В этом задании вам нужно вписать в указанное место код, который будет присваивать переменной "х" значение суммы переменных "a" и "b" в случае если a > b или их произведение в остальных случаях.

function testIf(a, b) {
    var x;
    if(a>b){
        x=a+b
    }
    else{
        x=a*b
    }
    return x;
}

Шаг 5

В этом задании вам нужно вписать в указанное место код, который будет присваивать переменной "х" значение суммы переменных "a" и "b" - в случае если a < b, разность "a" и "b" - в случае если a > b, и их произведение в остальных случаях.

function testIf(a, b) {
    var x;
    if(a<b){
       x=a+b 
    }
    else if(a>b){
       x=a-b 
    }
    else{
      x=a*b  
    }
    return x;
}

Шаг 8

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

testCase = a => {
    switch (a) {     
        case 0: return "Ноль"; 
        case 1: return "Один";  
        case 2: return "Два";  
        case 3: return "Три";  
        case 4: return "Четыре";  
        case 5: return "Пять";  
        case 6: return "Шесть"; 
        case 7: return "Семь"; 
        case 8: return "Восемь";
        case 9: return "Девять";
    }
};

1.6 Циклы.

Шаг 5

В этом задании вам нужно вычислить факториал для числа, передаваемого в нашу функцию и вывести его с помощью команды return. На всякий случай напоминаем, что факториал числа a это произведение всех целых чисел от 1 до a, например, если а = 5, то факториал a будет равен 1 * 2 * 3 * 4 * 5

function testFactorial(a) {
    var x = 1; 
    for(i = 1;i <= a;i++){
        x *= i;
        }
    return x;
}

Шаг 8

В этом задании вам нужно вычислить сумму всех четных чисел, встречающихся в ряду от 1 до числа (включительно), передаваемого в нашу функцию (переменная "а").

function testWhile(a) {
    var x=0;
    var i=1
    while(i<=a){
        if(i%2==0){
            x+=i
            }
        i++
        }
    return x;
}