Декодирование
Преобразование кода в текст
«Декодирование» — бесплатный урок Javascript for Kids на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Javascript for Kids, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Javascript for Kids содержит 4 уроков всего.
Взламываем код! 🔓
Декодирование — это превращение секретного сообщения обратно в обычные слова! Давайте взломаем несколько кодов! 🔓🕵️
console.log('Time to crack the code! 🔓')Противоположность кодированию 🔄
При кодировании буквы сдвигаются FORWARD. При декодировании они сдвигаются BACK на ту же величину! 🔄
console.log('Encode: forward ➡️')
console.log('Decode: backward ⬅️')Сдвигаем одну букву назад ⬅️
Если d получилась после сдвига a на 3 позиции вперёд, сдвинем её на 3 позиции назад и получим a! ⬅️
let n = 'd'.charCodeAt(0)
console.log('d back by 3:', String.fromCharCode(n - 3))Нам нужен ключ 🗝️
Чтобы декодировать сообщение, нужно знать секретный ключ сдвига, который использовал отправитель. Один и тот же ключ работает в обоих направлениях! 🗝️
let key = 3
console.log('The secret key is:', key)Перебираем секрет в цикле 🔁
Мы перебираем секретное сообщение в цикле и сдвигаем каждую букву назад. 🔁
let secret = 'kh'
let key = 3
for (let i = 0; i < secret.length; i++) {
console.log(String.fromCharCode(secret.charCodeAt(i) - key))
}Собираем настоящее сообщение 📥
Мы соединяем декодированные буквы в настоящее сообщение! 📥
let secret = 'kh'
let key = 3
let real = ''
for (let i = 0; i < secret.length; i++) {
real += String.fromCharCode(secret.charCodeAt(i) - key)
}
console.log('Real message:', real)Декодируем целое слово 🎉
Давайте декодируем секретное слово khoor с ключом 3 и раскроем его! 🎉
let secret = 'khoor'
let key = 3
let real = ''
for (let i = 0; i < secret.length; i++) {
real += String.fromCharCode(secret.charCodeAt(i) - key)
}
console.log('Decoded:', real)Функция декодирования 🛠️
Давайте создадим многоразовую функцию decode! 🛠️
function decode(secret, key) {
let out = ''
for (let i = 0; i < secret.length; i++) {
out += String.fromCharCode(secret.charCodeAt(i) - key)
}
return out
}
console.log(decode('ecv', 2))Сначала кодируем, затем декодируем 🔄
Если закодировать сообщение, а затем декодировать его с тем же ключом, мы получим исходное сообщение обратно! 🔄
function shiftAll(msg, k) {
let out = ''
for (let i = 0; i < msg.length; i++) out += String.fromCharCode(msg.charCodeAt(i) + k)
return out
}
let secret = shiftAll('hi', 3)
let back = shiftAll(secret, -3)
console.log('Secret:', secret, 'Back:', back)Неправильный ключ — неправильное сообщение ❌
Если использовать WRONG ключ, получится бессмыслица. Именно это и сохраняет сообщение в секрете! ❌
function decode(s, k) {
let out = ''
for (let i = 0; i < s.length; i++) out += String.fromCharCode(s.charCodeAt(i) - k)
return out
}
console.log('Right key:', decode('khoor', 3))
console.log('Wrong key:', decode('khoor', 1))Полный декодировщик 🎮
Вот ваш полноценный взломщик кодов! 🎮🔓
function decode(s, k) {
let out = ''
for (let i = 0; i < s.length; i++) out += String.fromCharCode(s.charCodeAt(i) - k)
return out
}
console.log('Secret: phhw ph')
console.log('Real:', decode('phhw ph', 3))Быстрая проверка ✅
Последняя шпионская проверка! 🕵️
Мастер-шпион! 🌟
Невероятная работа, агент! 🕵️ Вы завершили курс Создатель секретных кодов! 🎉
- Узнали, что такое коды 🔐
- Научились сдвигать буквы ➡️
- Закодировали сообщения 📦
- Декодировали секреты 🔓
Вы настоящий взломщик кодов! 🏆
console.log('Secret Code Maker: COMPLETE! 🌟🏆')Часто задаваемые вопросы
Урок «Декодирование» бесплатный?
Да — полный текст урока «Декодирование» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Javascript for Kids, подпишись на CoddyKit PRO. Курс Javascript for Kids содержит 4 уроков всего.
Чему я научусь в уроке «Декодирование»?
Преобразование кода в текст Ты практикуешь Javascript for Kids с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Javascript for Kids?
Предыдущий опыт не требуется. Javascript for Kids на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Декодирование»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Javascript for Kids?
Да. Каждый урок Javascript for Kids включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Что такое код
- Сдвиг букв
- Кодирование
- Декодирование