JavaScript для начинающих - Darkyel/stepik_answers GitHub Wiki
Оглавление
- 1 Введение в JavaScript
- 2 Стандартные объекты
- 2.1 Функции
- 2.2 Объекты
- 2.3 Строки
- 2.4 Массивы
- 2.5 Дата и время
- 2.6 Математические функции
- 3 Продвинутые операции
- 3.1 Обработка ошибок
- 3.2 Введение в регулярные выражения
- 3.3 Использование регулярных выражений
- 3.4 Замыкания
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;
}