Использую input и кнопку для получения данных из оного. Js имею такой вот код:
function getDataFromInput() {
var str;
str = $("#msg").val();
var arr;
arr = str.split('');
for (var i = 0; i < arr.length; i++) {
if (arr[i] % 2 === 0) {
arr[i] = "?";
}
}
print(arr);
}
function print(arr) {
$("#word").html(arr);
}
Код выполняется только если вводишь в input варинаты типа : 12345678. Тогда четный символ заменяется корректно. Но если ввести что-то типа: 1223365879952. То заменяются только четные числа,а не четный символ. С буквами вообще не работает. Как исправить?
В строке
arr[i] % 2 берет i-е число из инпута и делит на 2, работа идет с числами, а не с индексом. именно поэтому твой код заменяет четные числа, а не символы. для работы с символами дели сам индекс i % 2
Но в ответе выше уже дано решение красивее)
for (var i = 0; i < arr.length; i++) {
if (arr[i] % 2 !== 0) {} else {
for (var i=0; i<arr.length; i+=2) {
Итак! Финальный вариант кода,которые заменяет именно четный по счету символ в строке,будь она представлена числами,или буквами выглядит так:
function getDataFromInput() {
var str;
str = $("#msg").val();
var arr;
arr = str.split('');
for (var i = 0; i < arr.length; i++) {
if (i % 2 !== 0) {
arr[i] = "?";
}
}
print(arr);
}
function print(arr) {
$("#word").html(arr);
}
Благодарю за помощь!
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Для игры нужно подгрузить заранее в районе 12 изображений, причем эти изображения могут варьироваться от случая к случаюТо есть сейчас мне...
Ситуация такая: есть слайдер, в котором есть кнопка, после нажатия на нее должен скрываться блок с другим классом, который вне слайдераПомогите...
На десктопах всё отлично работает, но на сенсорных экранах нетПодключал так: