Как сделать так, чтобы нельзя было вводить больше двух чисел и чтобы эти числа были от 1 до 10?
Как сделать так, чтобы нельзя было вводить больше двух чисел и чтобы эти числа были от 1 до 10, без ноля, пробовал через матч, но чо то не разобрался совсем, не могу понять логику, как сделать
function count(string) {
if (string.match(/\//) == '/') {
switch(string) {
case string:
if (string.indexOf('/')) {
if(eval(string) >= 1) {
console.log('Я здесь')
return String(Math.round(eval(string)));
} else {
console.log('Я вот здесь')
return String(0);
}
};
};
} else {
console.log('Я тута')
return String(eval(string));
};
};
Ответы (1 шт):
Автор решения: Алексей Шиманский
→ Ссылка
Не будем углубляться в то, что код совсем не оч. Будем просто отвечать на вопрос.
Предположим строка
let str = '32 / 55';
Найдём все числовые символы
let regexp = /\d+/g;
let str = '32 / 55';
let result = [...str.matchAll(regexp)];
console.log(result);
Теперь нужно смотреть в result. Если result.length > 2 то значит ввели больше двух чисел
Если длина массива равна 2 - то идём дальше по коду.
Эти числа можно сложить в переменные a и b
let [a, b] = [+result[0][0], +result[1][0]];
Дальше уже их использовать если надо.
let regexp = /\d+/g;
let str = '32 / 55';
let result = [...str.matchAll(regexp)];
let [a, b] = [+result[0][0], +result[1][0]];
console.log(`Значение первой переменной: ${a}, значение второй: ${b}`);
Проверить что они от 1 до 10 можно с помощью if