ЙажаСценарий / Говнокод #16380 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
function UpdateTime() {
var CurrentTime = new Date();
var InputTime = document.getElementById('MyTime');
var InputDate = document.getElementById('MyDate');
sec=sec+1;
if(sec >=58)
{
	if(min>59)
	{
		hour=hour+1;
		min=0;
	} else
	{ min=min+1;
	};
	sec=0;
} else {
};
	h = hour;
	if ( h < 10 ) h = "0" + h;
	m = min;
	if ( m < 10 ) m = "0" + m;
	s = sec;
	if ( s < 10 ) s = "0" + s;
	outString = h + ":" + m + ":" + s;
	InputTime.innerHTML = outString;
	outString = d + " ";
	outString += month[mo] + " ";
	outString += y;
	InputDate.innerHTML = outString;
	setTimeout("UpdateTime()",1000);
}

Надо было человеку время написать на сайте, текущее...
И ОНО сделало ЭТО.
И этот код встречается на каждой странице проекта. Постоянно 1 и тот же. А верстку лучше даже не смотреть....
Уже около часа не знаю с какой стороны подобраться к этому поделию(в основном к верстке)...

Запостил: Dart_Sergius Dart_Sergius, (Updated )

Комментарии (59) RSS

    • Но логика, замечу, была верная.
      "X < Y аналогично X <= Z, где Y и Z различаются на единицу"
      Ответить
      • > где Y и Z различаются на единицу
        Зачем так сложно? 🙂

        Для целых чисел X < Y эквивалентно X <= Z, где Y = Z + 1
        Ответить
        • > Зачем так сложно? 🙂
          У меня в голове примерно это и хранится. И у автора кода, видимо.
          А +1 или -1 ставить при замене одного неравенства на другое, определяется подстановкой при написании кода.

          >> if(sec >=58)
          >> if(min>59)
          Но иногда не выходит...
          Ответить
          • А я даже не храню это в памяти... Просто представляю себе последнее число из нужного отрезка (например 59) и пишу <= 59 или < 60. Как-то так.
            Ответить
            • похоже на спор - а с какой ноги вы встаете. Я вообще никогда об этом не думал. Автоматика
              Ответить
              • Ну вот в этом треде заставили задуматься 😉

                P.S. Как бы не случилось как с бородой из анекдота...
                Ответить
                • не поддавайся на провокации! сегодня ты задумываешься о написании циклов, а завтра пишешь системный код на пхп)
                  Ответить
                  • > системный код на пхп
                    Драйверы, обменивающиеся между собой HTTP запросами. Ня ^_^
                    Ответить
                    • Все параметры через get-post строкой передаются. И никакого байтоебства, типизации и секса с памятью.
                      Ответить
                      • Запасаемся попкорном и ждём статей "Микроядро на вебсокетах в 30 строк JavaScript"
                        Ответить
                        • Вебсокеты не могут цепляться друг к другу, емнип. Тут надо ВебРТЦ...
                          Ответить
                            • Ну если какой-нибудь v8 сможет работать в bare metal режиме без операционки - why not? 🙂
                              Ответить
                                    • > Не, я JS не умею
                                      Да тут хардкорное сишко- или крестоблядство, а не жс...
                                      Ответить
                                      • тем более. В этих областях я нуб. Есть только энтузиазм.)
                                        Ответить
                                        • > Есть только энтузиазм.

                                          Эта штука очень быстро иссякает. Лучше помоги какому-нибудь опен-сорсному проекту. Больше пользы и тебе и другим будет.
                                          Ответить
                                          • Так если вы начнете пилить микроядро это и будет проект. А если нет - у меня тут аппликативные функторы ждут возможности потрахать мозг)
                                            Ответить
                                            • gnu-шники уже больше 20 лет пилят микроядро, нафига нам этим заниматься? 🙂
                                              Очевидно, что дело - тухляк.

                                              Читай лучше про функторы.
                                              Ответить
                                              • Придется мне с шарпа на немерле переходить такими темпами)
                                                Ответить
                                        • Ну я себе это представляю как-то так (в самом простом случае):
                                          - у нас будет только один инстанс какого-нибудь v8 (чтобы не ебаться с планировщиком) и одно адресное пространство
                                          - мапаем всю оперативку большим непрерывным куском, пускай сборщик мусора там резвится в гордом одиночестве
                                          - мутим WebRTC интерфейс для обычных портов, замапаных в память портов и прерываний

                                          А дальше можно кодить на чистом js...
                                          Ответить
                                          • >Ну я себе это представляю как-то так (в самом простом случае):
                                            > у нас будет только один инстанс какого-нибудь v8 (чтобы не ебаться с планировщиком) и одно адресное пространство
                                            Мне нравится путь по которому пошёл bellard.org/jslinux
                                            Ответить
            • > А я даже не храню это в памяти...
              Когда кто-то напишет for(i=0; i<=256; ++i), у Вас возникнет микробатхёрт, доказывающий, что в памяти оно (и не только оно) хранится 🙂
              Ответить
              • > у Вас возникнет микробатхёрт
                Ну да, захочется поглядеть на то, что же представляет собой это i.
                Ответить
                • Первое, о чём я подумаю, а не однобайтовое ли значение хранится в i.
                  Ответить
  • Раздел VII. Преступления против личности
      Глава 16. Преступления против жизни и здоровья
        Статья 110. Доведение до самоубийства
    Ответить
  • А как же часы, дни, месяцы, года? Я бы посмотрел на свич выбора дня
    Ответить
      • ну всмысле было бы
        if (d == 28 && m == "febrary")...

        Свич не тот что слово зарезервированное, а именно как распределитель
        Ответить
        • А че там сложного то?
          if (m in ['jan', 'mar', 'may', 'jul', 'aug', 'oct', 'dec'] && d == 31 ||
              m in ['apr', 'jun', 'sep', 'nov'] && d == 30 ||
              m == 'feb' && (d == (y % 4 == 0 && (y % 100 != 0 || y % 400 == 0) ? 29 : 28)))
          {
              d = 1;
              if (m == 'dec') {
                  m = 'jan';
                  y++;
              } else {
                  m = months[months.indexOf(m) + 1];
              }
          }
          Ответить
          • Тут чувак пишет

            if(sec >=58)

            мне интересна его версия. На твой счет то я не сомневаюсь)
            Ответить
            • Ну там есть глобальный массив month.
              Ну и да, день не меняется. А месяц тем более.
              Заполняются стартовые данные при обновлении с сервера (WARNING: JSP)
              <%
              "hour="HOUR";"
              "min="MINUTE";"
              "sec="SECOND";"
              "y="YEAR";"
              "mo="MONTH-1";"
              "d="DAY";"
              %>

              (/WARNING: JSP)

              И это код взять из электронной очереди, которые ставят в сбербанках всяких...
              Ответить
                • Ну на ночь то эти терминалы отключают. Так что не так страшен черт, как его малюют...
                  Ответить
                  • ну с этим я ещё мог смириться, НО ВЕРСТКА!!! От чуваков, которые совершенно не знают что такое CSS, делают все на таблицах, и используют JS, но не знают про AJAX запросы, и потому используют автообновляющиеся IFRAME.
                    Даже мне, вполне далекому от сайтостроения человеку - это было ужасно.
                    Ответить
                    • >>но не знают про AJAX запросы, и потому используют автообновляющиеся IFRAME

                      //-*)
                      Ответить
                    • > Даже мне, вполне далекому от сайтостроения человеку - это было ужасно.
                      Да скорее всего такие же как мы с вами, далекие от сайтостроения, и верстали этот сайт, ибо начальство решило сэкономить на отдельных верстале и фронтендщике. У нас сейчас похожая ситуация - сайт с горем-пополам мутили DBA и системщик (ваш покорный слуга)... А автор приведенного вами кода, видимо, с хтмл и жс разбирался лет 10 назад, вот и верстал, как умел...
                      Ответить
                    • 1. Автообновляющиеся IFRAME нужны, когда требуется отправить запрос на другой сервер, потому что политика безопасности браузера зарубит кроссдоменный AJAX.

                      А если нужно отправить POST-запрос на чужой сервер, то даже вставляют невидимые формы с автоматическим кликом.

                      2. Дивная вёрстка ради дивов тоже не нужна. Иногда доходит до маразма, когда даже таблицы чисел а ля эксель перевёрстывают на дивах.

                      Применять или не применять таблицы, зависит от того, какой конечный результат хотим получить. Прелесть блоков в том, что они могут автоматически переноситься на новую строку. Если же нужен жёсткий каркас, таблицей проще.

                      И да, <div style="display:table-cell"> — это тоже таблица, но только несемантическая.

                      3. А вот насчёт CSS согласен. За незнание CSS нужно отлучать от вёрстки!
                      Ответить
                      • > если нужно отправить POST-запрос на чужой сервер

                        Или даже просто отправить файлы без сабмита страницы...
                        Ответить

Добавить комментарий

Я, guest, находясь в здравом уме и твердой памяти, торжественно заявляю:

    А не использовать ли нам bbcode?


    8