/
Coderdev
/
web-static-labs
Обзор
Документация
Войти
/
Coderdev
/
web-static-labs
Код
Запросы
0
Задачи
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
html/lab4/task2/script.js
80 строк
1 KB
Coderdev
1
16 мар 2026, 19:57
16 мар 2026, 19:57
adb9cd6
Код
Авторство
О чём код?
const $ = id => document.getElementById(id) function digitsOnly(s){ return s.replace(/\D/g,'') } function luhn(num){ let sum = 0 let alt = false for(let i=num.length-1;i>=0;i--){ let n = Number(num[i]) if(alt){ n *= 2 if(n > 9) n -= 9 } sum += n alt = !alt } return sum % 10 === 0 } function formatCard(num){ return num.match(/.{1,4}/g).join(" ") } function detect(num){ if(num.startsWith("4")) return "VISA" if(num.startsWith("5")) return "MasterCard" if(num.startsWith("220")) return "МИР" return "Неизвестно" } $("check").onclick = () => { let raw = $("card").value let num = digitsOnly(raw) if(num.length !== 16){ $("result").innerText = "Неверная длина" return } if(!luhn(num)){ $("result").innerText = "Ошибка Luhn" return } $("card").value = formatCard(num) $("type").innerText = detect(num) $("result").innerText = "OK" }