Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.12.2017, 23:03
Новичок на форуме
Отправить личное сообщение для Репетитор Посмотреть профиль Найти все сообщения от Репетитор
 
Регистрация: 02.12.2017
Сообщений: 3

Словарный тренажёр на JavaScript
Всем привет! Никак не могу догнать как можно сделать простенький словарный тренажёр на JavaScript.
Задача в следующем: есть список слов на русском и их перевод на английском. нужно сделать так чтобы скрипт рандомно показывал по одному русскому слову из этого массива. пользователь в поле input должен ввести перевод этого слова.
Если он окажется верным/неверным, то выводятся соответствующие надписи.
Мои соображения: использовать так называемые ассоциативные массивы. Каждому элементу массива присвоить значение. только вот не могу понять как их сравнивать в цикле if.
Кто может помогите хотя бы в каком направлении двигаться.
Заранее благодарю.
Ответить с цитированием
  #2 (permalink)  
Старый 02.12.2017, 23:33
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от Репетитор
как их сравнивать в цикле if.
цикл не нужен
var text = "неверно";
if(str == translation[word]) text = "верно"
Ответить с цитированием
  #3 (permalink)  
Старый 03.12.2017, 00:23
Новичок на форуме
Отправить личное сообщение для Репетитор Посмотреть профиль Найти все сообщения от Репетитор
 
Регистрация: 02.12.2017
Сообщений: 3

Сообщение от рони Посмотреть сообщение
цикл не нужен
var text = "неверно";
if(str == translation[word]) text = "верно"
можно уточню?
if(str == apple[яблоко], grapes[виноград], orange[апельсин], banana[банан]) text = "верно"

я правильно понимаю?

Последний раз редактировалось Репетитор, 03.12.2017 в 00:25.
Ответить с цитированием
  #4 (permalink)  
Старый 03.12.2017, 00:37
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от Репетитор
я правильно понимаю?
нет translation это один обьект для всех слов и перевода.
var translation = {"apple": "яблоко", "grapes" : "виноград"} ; // и т.д.
Ответить с цитированием
  #5 (permalink)  
Старый 03.12.2017, 00:43
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Репетитор,
var translation = {"apple": "яблоко", "grapes" : "виноград"} ;
var word = "apple"; //Math.random()
var text = "неверно";
var str = "яблоко"; //input.value
if(str == translation[word]) text = "верно" ;
alert(text);
Ответить с цитированием
  #6 (permalink)  
Старый 03.12.2017, 01:58
Кандидат Javascript-наук
Отправить личное сообщение для Lion777 Посмотреть профиль Найти все сообщения от Lion777
 
Регистрация: 04.11.2017
Сообщений: 117

недавно предыдущему тс похожее выкладывал
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>

<body>
    <div id="hello"></div>
    <br> переведи слово, что выше!
    <br>
    <input type="text">
    <br>
    <button>перевести</button>
    <script>

        var ruEn =
            [
                ["читать", "read"],
                ["смотреть", "see"],
                ["слушать", "listen"],
                ["бежать", "run"],
                ["спать", "sleep"]
            ];
        var i = Math.floor(Math.random() * (ruEn.length - 1));
        var hello = document.getElementById('hello');
        hello.innerHTML = '<b>' + ruEn[i][0] + '</b>';
        var word = document.querySelector('input');

        document.querySelector('button').onclick = function () {
            if (word.value == ruEn[i][1]) {
                hello.innerHTML = 'Да, <b>' + word.value + '</b> это <b>' + ruEn[i][0] + '</b>!';
            } else {
                hello.innerHTML = 'Нет, <b>' + word.value + '</b> это не <b>' + ruEn[i][0] + '</b>, пробуй еще!';
            }
        }


    </script>

</body>

</html>

Последний раз редактировалось Lion777, 03.12.2017 в 02:00.
Ответить с цитированием
  #7 (permalink)  
Старый 03.12.2017, 15:05
Новичок на форуме
Отправить личное сообщение для Репетитор Посмотреть профиль Найти все сообщения от Репетитор
 
Регистрация: 02.12.2017
Сообщений: 3

Сообщение от рони Посмотреть сообщение
Репетитор,
var translation = {"apple": "яблоко", "grapes" : "виноград"} ;
var word = "apple"; //Math.random()
var text = "неверно";
var str = "яблоко"; //input.value
if(str == translation[word]) text = "верно" ;
alert(text);
Сообщение от Lion777 Посмотреть сообщение
недавно предыдущему тс похожее выкладывал
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>

<body>
    <div id="hello"></div>
    <br> переведи слово, что выше!
    <br>
    <input type="text">
    <br>
    <button>перевести</button>
    <script>

        var ruEn =
            [
                ["читать", "read"],
                ["смотреть", "see"],
                ["слушать", "listen"],
                ["бежать", "run"],
                ["спать", "sleep"]
            ];
        var i = Math.floor(Math.random() * (ruEn.length - 1));
        var hello = document.getElementById('hello');
        hello.innerHTML = '<b>' + ruEn[i][0] + '</b>';
        var word = document.querySelector('input');

        document.querySelector('button').onclick = function () {
            if (word.value == ruEn[i][1]) {
                hello.innerHTML = 'Да, <b>' + word.value + '</b> это <b>' + ruEn[i][0] + '</b>!';
            } else {
                hello.innerHTML = 'Нет, <b>' + word.value + '</b> это не <b>' + ruEn[i][0] + '</b>, пробуй еще!';
            }
        }


    </script>

</body>

</html>
Спасибо пацаны. Теперь буду разбираться что такое " querySelector", а потом добавлять самопальную виртуальную клаву к input.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Книга: JavaScript. Сильные стороны Magneto Учебные материалы 16 21.04.2013 15:28
Интерпретатор Java на JS kobezzza Оффтопик 24 11.10.2012 18:32
Первый Moscow JavaScript Meetup korenyushkin Общие вопросы Javascript 0 26.07.2011 15:23
Последние книги по JavaScript! monolithed Учебные материалы 7 26.10.2010 19:40
Выдвет ошибку JavaScript Ромио Opera, Safari и др. 4 21.10.2010 20:34