найди ошибку
1)
function(input) {
if (input.length = 0) {
return true;
}
else return false;
}
2)
const isNumber = function(num) {
if(num == Number) {
return true
} else {
return false
}
}
3)
string_to_array = function (str) {
return str.split("");
};
string_to_array("Hello I am string")
4)
function myFunc(num1) {
if (num1 > 10 || num1 < 20) {
return “10 < num1 < 20”
} else {
return “Не в диапазоне”;
}
}
5)
function assignGrade(score) {
if (score > “10”) {
return '5';
} else if (score > “8”) {
2
return '4';
} else if (score > “6”) {
return '3';
} else if (score > “4”) {
return '2';
} else {
return '1';
}
}
6)
for (var x=0; x>=15; x--) {
else if (x % 2 === 0) {
console.log(`{x} is even`);
}
else {
console.log(`{x} is odd`);
}
}
7)
function reverse_a_number(n)
{
return n.split("").reverse().join("");
}
8)
const reverse = (array) => {
const reversed = [];
for (let i = array.length; i >= 0; i++) {
reversed.push(array[i]);
}
return reversed;
};
9)
function testFunc(x) {
X ** 5
}
testFunc(5) // undefined
Ответы
Ответ:
1) В if-записи вместо оператора сравнения "==" используется оператор присваивания "=". Это означает, что if-запись всегда будет истинна, независимо от значения input.length.
2) В if-записи используется сравнение с типом Number, а не с значением. Это означает, что условие всегда будет ложным, независимо от значения num.
3) В этом коде нет ошибок.
4) В коде ошибки не обнаружены. Однако, в строкеreturn “10 < num1 < 20” используется неправильный синтаксис кавычек. В JavaScript необходимо использовать одинарные кавычки или обратные кавычки, а не двойные.
5) В условиях if и else if используются некорректные строковые литералы (обрамленные в кавычки “”). В JavaScript строковые литералы должны быть обрамлены в одинарные кавычки (').
6) Перед блоком else if отсутствует if-запись. Это приведет к синтаксической ошибке. Условие цикла for (x>=15) является ложным, так как значение x начинается с 0. Поэтому цикл не будет выполняться ни разу. В строках, где вызывается console.log, в кавычках указаны фигурные скобки, а не обратные кавычки. Это также приведет к синтаксической ошибке.
7) В предоставленном коде нет ошибок. Эта функция, кажется, правильно определена и должна работать так, как задумано.Однако стоит отметить, что эта функция работает только с числами, которые передаются в качестве строк. Если вы передаете число как реальное число (например, 123), то она не будет работать правильно.Например, следующий код вызовет ошибку:
let num = 123;
console.log(reverse_a_number(num)); // TypeError: n.split is not a function
8) В цикле for нарушена логика инкрементации/декрементации счетчика i. В условии i >= 0 необходимо использовать оператор сравнения ">=", а не оператор присваивания "=".
9) В функции testFunc оператор ** используется для возведения числа в степень, но не предпринимается никаких действий с результатом этой операции. Это означает, что функция не возвращает никакого значения, поэтому при вызове testFunc(5) результатом будет undefined.