@Denisca2828

Что не так в этом коде?

Пишу код, он должен брать из input`а текст("textt' - это id) и переделывать его в всякие числа типо 00000001 и т.д. и т.п....
Помогите что же не так?
var codes = {a:"00000001", b:"00000010", c:"00000100", d:"00001000", e:"00010000", f:"00100000", g:"01000000", h:"10000000", l:"10000001", j:"10000010", k:"10000100", l:"10001000", m:"10010000", n:"10100000", o:"11000000", p:"11000001", q:"11000010", r:"11000100", s:"11001000", t:"11010000", u:"11100000", v:"11100001", w:"11100010", x:"11100100", y:"11101000", z:"11110000"};
var utf_den = {

    vcode:function(id, code){
    	var b = document.getElementById(id).value;
    	var a = b.length;
    	var c;
    	for (var i=1;i>a;i++) {
    		
    		var e = code.b.charAt(i);
    		c=e+c;
    		return e;
    	}
    }

}
console.info(utf_den.vcode("textt", codes));
  • Вопрос задан
  • 117 просмотров
Решения вопроса 1
Maksimoff
@Maksimoff
Кодер-вредитель
i>a

цикл просто не запустится, если в input что-то будет, потому что i не будет больше длины входной строки

var e = code.b.charAt(i);

сомнительная конструкция, код получает символ из объекта codes

ну и
return e;

оборвёт цикл на первой же итерации, если ты его всё таки запустишь.

примерно так должно работать:
var codes = {
    "a": "00000001",
    "b": "00000010",
    "c": "00000100",
    "d": "00001000",
    "e": "00010000",
    "f": "00100000",
    "g": "01000000",
    "h": "10000000",
    "l": "10000001",
    "j": "10000010",
    "k": "10000100",
    "l": "10001000",
    "m": "10010000",
    "n": "10100000",
    "o": "11000000",
    "p": "11000001",
    "q": "11000010",
    "r": "11000100",
    "s": "11001000",
    "t": "11010000",
    "u": "11100000",
    "v": "11100001",
    "w": "11100010",
    "x": "11100100",
    "y": "11101000",
    "z": "11110000"
};
var utf_den = {
    vcode: function(id, code) {
        var b = document.getElementById(id).value;
        var c = "";
        for (var i = 0; i < b.length; i++) {
            var e = b.charAt(i);
            c += code[e];
        }
        return c;
    }
}
console.info(utf_den.vcode("textt", codes));
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы