Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Незапланированная остановка кода (https://javascript.ru/forum/misc/82177-nezaplanirovannaya-ostanovka-koda.html)

Iluxa99 27.03.2021 16:50

Незапланированная остановка кода
 
Я пишу одну программу своему клиенту при помощи Javascript, проблема заключается в том, что код останавливается ровно посередине от того что запланированно сделать. Пример из моего Скрипта для понимания задачи:
function calculator() {
			c=a+b;
			f=Math.trunc(c/10)+(c%10);
			out=(c>22)?f:c;
			return out;}
		function transformator(){
		mnim= math.split('');
		mntt=[0,0];
		mntt[0]= (rlarim1.search(mnim[0]) != -1)?1: (rlarim2.search(mnim[0]) != -1)?2: (rlarim3.search(mnim[0]) != -1)?3: (rlarim4.search(mnim[0]) != -1)?4: (rlarim5.search(mnim[0]) != -1)?5: (rlarim6.search(mnim[0]) != -1)?6: (rlarim7.search(mnim[0]) != -1)?7: (rlarim8.search(mnim[0]) != -1)?8: (rlarim9.search(mnim[0]) != -1)?9:0;
		mntta1= (rlarim1.search(mnim[1]) != -1)?1: (rlarim2.search(mnim[1]) != -1)?2: (rlarim3.search(mnim[1]) != -1)?3: (rlarim4.search(mnim[1]) != -1)?4: (rlarim5.search(mnim[1]) != -1)?5: (rlarim6.search(mnim[1]) != -1)?6: (rlarim7.search(mnim[1]) != -1)?7: (rlarim8.search(mnim[1]) != -1)?8: (rlarim9.search(mnim[1]) != -1)?9:0;mntt[1]= (1 in mnim)? mntta1:0;
		.........
		mntta29= (rlarim1.search(mnim[29]) != -1)?1: (rlarim2.search(mnim[29]) != -1)?2: (rlarim3.search(mnim[29]) != -1)?3: (rlarim4.search(mnim[29]) != -1)?4: (rlarim5.search(mnim[29]) != -1)?5: (rlarim6.search(mnim[29]) != -1)?6: (rlarim7.search(mnim[29]) != -1)?7: (rlarim8.search(mnim[29]) != -1)?8: (rlarim9.search(mnim[29]) != -1)?9:0;mntt[29]= (29 in mnim)? mntta29:0;
		o4a=mntt.reduce((sum, current) => sum + current, 0);
		o4b=Math.trunc(o4a/100)+Math.trunc((o4a%100)/10)+(o4a%10);
		o4= (o4a>22)?o4b:o4a;
		return o4;}.

В общем первая функция вы сами видите, что она складывает и проводит проверку (если больше то...), вторая переводит буквы в числа и точно также их складывает. В запланированном скрипте 4 transformator и 16 calculator, а вышло 4 и 2 соответственно. Почему: не знаю. Подскажите пожалуйста из-за чего это происходит и есть варианты решить данную проблему.:help: :help: (эти rlarim1-9 - это набор букв разложенный по отдельным массивам(a=[0,0,0]), для перевода в цифры)

Detrimon 27.03.2021 16:54

А можно код оформить, например, в https://codepen.io/ и прислать на код ссылку? А то очень сложно понять, что тут написано, когда явно какой-то набор символов заменяется смайликом sad..

рони 27.03.2021 17:55

Iluxa99,
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[html run]
... минимальный код страницы с вашей проблемой
[/html]

О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.

Iluxa99 28.03.2021 08:50

Спасибо, что рассказали про форматирование кода, отформатировал в простой код без возможности запуска, так как это лишь его кусок, который лишь считает.

voraa 28.03.2021 09:11

1. Смотрите в консоле браузера, нет ли сообщений об ошибках
2. Воспользуйтесь отладчиком и пройдите код по шагам
3. Что мы можем сказать, не видя всего кода, не зная, что такое rlarim1...,

4. У вас все переменные глобальные? Все эти a, b, c, f, out, mnim... определяются где то вне этих функций? Даже out и o4?

Aetae 28.03.2021 11:05

Мужик, форматируй код нормально и используй полноценные имена переменных. В этом говне никто не захочет разбираться. Даже ты сам.
Если тебе надо привести код в нечитаемый вид перед "продажей", любой минификатор с этим справится.

voraa 28.03.2021 17:41

Цитата:

Сообщение от Rise
Тоже самое, что это:
(rlarim1.search(mnim[0]) != -1) ? 1 : 0;

???
(Ну если только есть какие то тайные знания, что такое rlarim1...rlarim9)


Часовой пояс GMT +3, время: 02:15.