Задать вопрос
  • Как можно сократить этот код?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    const type_input = document.getElementById("type_input").value;
    const type_name = ['фильм', 'сериал', 'мультсериал', 'мультфильм', 'аниме'];
    const type_idx = type_name.indexOf(type_input);
    let type = 0;
    if (type_idx === -1) {
        alert('Добавьте или исправьте тип');
    } else {
        type = type_idx + 1;
    }

    А вообще, такое делается с помощью select, тогда невозможно ввести неправильное значение и весь этот код просто не нужен.
    И в целом, не используйте var, она размещает переменную в глобальной области видимости. Вместо этого используйте const или let, в зависимости от дальнейшей иммутабельности переменной.
    Используйте строгое сравнение. Нестрогое означает, что вы не уверены в типах данных.
    Ответ написан
  • Как можно сократить этот код?

    delphinpro
    @delphinpro Куратор тега JavaScript
    frontend developer
    const type_input = document.getElementById("type_input").value.toLowerCase();
    const type_names = ['фильм', 'сериал', 'мультсериал', 'мультфильм', 'аниме'];
    const type_index = type_names.indexOf(type_input);
    let type = 0;
    
    if (type_index === -1) {
        alert('Добавьте или исправьте тип');
    } else {
        type = type_index + 1; // значение для базы данных (если нужно 1-based)
    }
    Ответ написан
    4 комментария