JavaScript / Говнокод #26760 Ссылка на оригинал

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
function s(t) {
    for (var e = ["yo", "zh", "kh", "ts", "ch", "sch", "shch", "sh", "eh", "yu", "ya", "YO", "ZH", "KH", "TS", "CH", "SCH", "SHCH", "SH", "EH", "YU", "YA", "'"], n = ["ё", "ж", "х", "ц", "ч", "щ", "щ", "ш", "э", "ю", "я", "Ё", "Ж", "Х", "Ц", "Ч", "Щ", "Щ", "Ш", "Э", "Ю", "Я", "ь"], r = t, i = 0, o = e.length; i < o; i++) {
        r = r.split(e[i]).join(n[i]);
    }
    for (var s = "abvgdezijklmnoprstufhcyABVGDEZIJKLMNOPRSTUFHCYёЁ", a = 0, c = s.length; a < c; a++) {
        r = r.split(s.charAt(a)).join("абвгдезийклмнопрстуфхцыАБВГДЕЗИЙКЛМНОПРСТУФХЦЫеЕ".charAt(a));
    }
    return r === t ? null : r
}

function a(t) {
    for (var e = ["yo", "zh", "kh", "ts", "ch", "sch", "shch", "sh", "eh", "yu", "ya", "YO", "ZH", "KH", "TS", "CH", "SCH", "SHCH", "SH", "EH", "YU", "YA", "'"], n = ["ё", "ж", "х", "ц", "ч", "щ", "щ", "ш", "э", "ю", "я", "Ё", "Ж", "Х", "Ц", "Ч", "Щ", "Щ", "Ш", "Э", "Ю", "Я", "ь"], r = "абвгдезийклмнопрстуфхцыАБВГДЕЗИЙКЛМНОПРСТУФХЦЫеЕ", i = t, o = 0; o < n.length; o++) {
        i = i.split(n[o]).join(e[o]);
    }
    for (var s = 0; s < r.length; s++) {
        i = i.split(r.charAt(s)).join("abvgdezijklmnoprstufhcyABVGDEZIJKLMNOPRSTUFHCYёЁ".charAt(s));
    }
    return i === t ? null : i
}

function c(t) {
    for (var e = "qwertyuiop[]asdfghjkl;'zxcvbnm,./`", n = t, r = 0; r < e.length; r++) {
        n = n.split(e.charAt(r)).join("йцукенгшщзхъфывапролджэячсмитьбю.ё".charAt(r));
    }
    return n == t ? null : n
}

Те же конташники. На каждую ворецию транслитерации мы будем сплитить строку в массив и джойнить его обратно. Какая эффективность )))

Fike Fike, (Updated )

Комментарии (8, +8)

JavaScript / Говнокод #26759 Ссылка на оригинал

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
  32. 32
  33. 33
  34. 34
  35. 35
function(t) {
    switch (t) {
        case 1:
            return g.emailNotConfirmed;
        case 2:
            return g.showCaptcha;
        case 3:
            return g.authFailed;
        case 4:
            return g.makeRedirect;
        case 5:
            return g.reload;
        case 6:
            return g.mobileActivationRequired;
        case 7:
            return g.showMessage;
        case 8:
            return g.showError;
        case 9:
            return g.votesPayment;
        case 10:
            return g.zeroZone;
        case 11:
        case 12:
            return Object(g.mobileValidationRequired)(t);
        case 13:
            return g.evalCode;
        case 14:
            return g.otpBox;
        case 15:
            return g.passwordValidationRequired;
        default:
            return Object(g.defaultHandler)(t)
    }
}(t)

https://vk.com/js/cmodules/bundles/common.2ce877ca4bd415d95d03.js?51fe80b96 a07a7861643

#байтоклюйство #спичечная-экономика #олимпиадники #ebivk

Fike Fike, (Updated )

Комментарии (8, +8)

JavaScript / Говнокод #15

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
      try {
        try {
          const { todos } = cache.readQuery({ query: GET_TODOS })
          cache.writeQuery({
            query: GET_TODOS,
            data: { todos: todos.filter(todo => todo.id !== deleteTodo.id) }
          })
        } catch {
          console.log()
        }
        const { category } = cache.readQuery({ query: GET_TODOS_BY_CATEGORY, variables: { id: deleteTodo.category.id } })
        cache.writeQuery({
          query: GET_TODOS_BY_CATEGORY,
          variables: { id: deleteTodo.category.id },
          data: { category: { title: category.title, todos: category.todos.filter(todo => todo.id !== deleteTodo.id), __typename: 'Category' } }
        })
      } catch {
        return null
      }

serega_1337 serega_1337,

Комментарии (1, +1)

JavaScript / Говнокод #26729 Ссылка на оригинал

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
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
import * as React from 'react';
import {CityFromSelector} from './components/cityFromSelector';
import {CountryToSelector} from './components/countryToSelector';
import {MealsTypeSelector} from './components/mealsTypeSelector';
import {DepartureDatesRangeSelector} from './components/departureDatesRangeSelector';
import {HotelCategoriesSelector} from './components/hotelCategoriesSelector';
import {ResortSelector} from './components/resortSelector';
import {HotelsSelector} from './components/hotelsSelector';
import {TouristsSelector} from './components/touristsSelector';
import {OperatorsSelector} from './components/operatorsSelector';
import {NightsCountRangeSelector} from './components/nightsCountRangeSelector';
import {PriceRangeSelector} from './components/priceRangeSelector';
import {FlightInfo} from './components/flightInfo';
import {SearchFormActionCreator} from './search/searchFormActionCreator';
import {HotelsCountPopup} from './components/hotelsCountLimitPopup';
import * as throttle from 'lodash/throttle';
import * as filter from 'lodash/filter';
import * as union from 'lodash/union';
import * as merge from 'lodash/merge';
import * as reduce from 'lodash/reduce';
import * as chunk from 'lodash/chunk';
import * as difference from 'lodash/difference';
import * as differenceBy from 'lodash/differenceBy';
import { Tour } from 'sletat-api-services/lib/ModuleApiServices/Main.svc/GetTours/Tour';
import { logViewedTours } from 'sletat-api-services/lib/GraphApiServices/Main.svc/LogViewedTours/LogViewedTours';
import { OilTax } from 'sletat-api-services/lib/ModuleApiServices/Main.svc/GetTours/OilTax';
import { VisaFee } from 'sletat-api-services/lib/ModuleApiServices/Main.svc/GetTours/VisaFee';
import { getHotelImageSrc } from 'sletat-common-utils/lib/tour/getHotelImageSrc';
import { declineByCount } from 'sletat-common-utils/lib/format/declineByCount';
import { Tour as GetToursTour } from 'sletat-api-services/lib/ModuleApiServices/Main.svc/GetTours/Tour';
import { Tour } from './tour';
import { IVisaFee } from './visaFee';
import { IOilTax } from './oilTaxes';
import { UiPopup } from 'react-sletat-uikit/lib/ui-popup/UiPopup';
import { UiLoader } from 'react-sletat-uikit/lib/ui-loader/UiLoader';
import {
    SendConfirmEmailResults,
    recoverySendConfirmEmail,
    registrationSendConfirmEmail
} from 'sletat-api-services/lib/SletatServices/Services/SendConfirmEmail/SendConfirmEmail';
import { authentification } from 'sletat-api-services/lib/SletatServices/Authentification';
import LoginPopup from './components/Login';
import RegistrationPopup from './components/Registration';
import RecoveryPopup from './components/Recovery';
import SuccessPopup from './components/Success';
import { PopupTypes } from './constants';

может это уже нормально в современном фронтенде

tablecell tablecell, (Updated )

Комментарии (20, +20)

JavaScript / Говнокод #26722 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
吾有一術。名之曰「斐波那契」。欲行是術。必先得一數。曰「甲」。乃行是術曰。
	若「甲」等於零者乃得零也
	若「甲」等於一者乃得一也
	減「甲」以一。減「甲」以二。名之曰「乙」。曰「丙」。
	施「斐波那契」於「乙」。名之曰「丁」。
	施「斐波那契」於「丙」。名之曰「戊」。
	加「丁」以「戊」。名之曰「己」。
	乃得「己」。
是謂「斐波那契」之術也。

施「斐波那契」於十二。書之。

文言 wenyan-lang
Числа Фибоначчи.

https://github.com/wenyan-lang/wenyan

jojaxon jojaxon, (Updated )

Комментарии (4, +4)

JavaScript / Говнокод #26702 Ссылка на оригинал

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
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
  60. 60
  61. 61
  62. 62
  63. 63
  64. 64
  65. 65
  66. 66
  67. 67
  68. 68
  69. 69
  70. 70
  71. 71
  72. 72
  73. 73
  74. 74
  75. 75
  76. 76
  77. 77
  78. 78
  79. 79
  80. 80
  81. 81
  82. 82
  83. 83
<!DOCTYPE html>
<head>
    <meta charset="utf-8"/>
</head>
<body>
<canvas id='pixel_canvas'></canvas>
<pre id='text_canvas'></pre>
<script>
    'use strict';
    function tryFetch() {
        const array = arguments[0];
        const onError = arguments[arguments.length - 1];
        let result = array;
        for (let i = 1; i < arguments.length - 1; ++i) {
            if (arguments[i] < result.length) {
                result = result[arguments[i]];
            } else {
                return onError;
            }
        }
        return result;
    }

    function bitmap2tetramap(bitmap) {
        let tetramap = []
        for (let i = 0; i < bitmap.length; i += 2) {
            tetramap.push([]);
            for (let j = 0; j < bitmap[i].length; j += 2) {
                tetramap[tetramap.length - 1].push(
                    tryFetch(bitmap, i, j, 0) << 3 |
                    tryFetch(bitmap, i, j + 1, 0) << 2 |
                    tryFetch(bitmap, i + 1, j, 0) << 1 |
                    tryFetch(bitmap, i + 1, j + 1, 0)
                );
            }
        }
        return tetramap;
    }

    function renderTetramap(tetramap) {
        const tiles = [
            ' ', '▗', '▖', '▄',

            '▝', '▐', '▞', '▟',

            '▘', '▚', '▌', '▙',

            '▀', '▜', '▛', '█'
        ];
        return tetramap.map(row => row.map(i => tiles[i]).join('')).join('<br>');
    }

    function renderBitmap(bitmap) {
        return renderTetramap(bitmap2tetramap(bitmap));
    }

    function rgba2bitmap(rgba, width, height) {
        let bitmap = [];
        for (let i = 0; i < height; ++i) {
            bitmap.push([]);
            for (let j = 0; j < width; ++j) {
                const currentRGBAElementIndex = (i * width * 4) + j * 4;
                const red = rgba[currentRGBAElementIndex];
                const green = rgba[currentRGBAElementIndex + 1];
                const blue = rgba[currentRGBAElementIndex + 2];
                const a = rgba[currentRGBAElementIndex + 3];
                bitmap[i].push((red + green + blue + a) / 4 > 0? 1 : 0);
            }
        }
        return bitmap;
    }

    function renderImageData(imageData) {
        return renderBitmap(rgba2bitmap(imageData.data, imageData.width, imageData.height));
    }

    const ctx = pixel_canvas.getContext("2d");
    ctx.font = "16px serif";
    ctx.fillText("Какой багор )))", 0, 16);

    text_canvas.innerHTML = renderImageData(ctx.getImageData(0, 0, pixel_canvas.width, pixel_canvas.height));
</script>
</body>

HIV HIV, (Updated )

Комментарии (19, +19)

JavaScript / Говнокод #26679 Ссылка на оригинал

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
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
  60. 60
  61. 61
  62. 62
  63. 63
  64. 64
  65. 65
  66. 66
  67. 67
  68. 68
  69. 69
  70. 70
  71. 71
  72. 72
$openTab.on('click', function () {
            $('.c-header__nav__level-1').hide();
            $('.c-header__nav__level-back').show();
            $tabContent.show();
        });

        //показываем меню 1 уровня когда нажимаем на бургер

        $('.c-header__toggler--burger').on('click', function () {
            $('.c-header__toggler').toggle();
            $('.c-header__nav__level-1').fadeIn();
            $('body').addClass('body-no-scroll');

        });

        //скрытие на кнопку закрытие

        $('.c-header__toggler--close').on('click', function () {
            $('.c-header__toggler').toggle(); //сама кнопка
            $('.c-header__nav__level-1').fadeOut(); //закрываем первый уровень
            $tabContent.fadeOut(); //закрываем второй уровень
            setTimeout(function () { //тайм-аут для восстановления 2 уровня по умолчанию
                $('.c-header__nav__level-2-item--show').removeClass('c-header__nav__level-2-item--show');
                $('.c-header__nav__level-2-item').show();
            }, 800);
            $('.c-header__nav__level-3').fadeOut(); //закрываем 3 уровень
            $('.c-header__nav__back').fadeOut(); // закрываем все кнопки 'назад'
            $('body').removeClass('body-no-scroll');
        });

        //кнопка "назад" со 2 на 1 уровень

        $('.c-header__nav__level-back').on('click', function () {
            $(this).hide().parent().hide().prev().show();
        });

        $('.c-header__nav__level-2-back').on('click', function () {

            $(this).hide();
            $(this).prev().show();
            $('.c-header__nav__level-2').removeClass('is-active');
        });

        //кнопка "назад" с 3 на 2 уровень

        $('.c-header__nav__level-3-back').on('click', function () {
            $(this).hide()
                .parent().find('.c-header__nav__level-2-item--show').removeClass('c-header__nav__level-2-item--show'); // восстановления 2 уровня по умолчанию
            $('.c-header__nav__level-2-item').show(); // восстановления 2 уровня по умолчанию
            $('.c-header__nav__level-2-back').show(); //восстанавливаем кнопку "назад" 2 уровня
            $('.c-header__nav__level-3').hide(); //закрываем 3 уровень


        });

        //переход с 2 на 3 уровень

        $('.c-header__nav__level-2-item').on('click', function () {
            $('.c-header__nav__level-2-item').not($(this)).hide(); //закрываем весь 2 уровень кроме нажатого
            $(this).addClass('c-header__nav__level-2-item--show'); //стили для нажатого 2 уровня
            $('.c-header__nav__level-2-back').hide(); //скрываем кнопку "назад" 2 уровня
            $('.c-header__nav__level-3').show(); // показываем кнопку "назад" 3 уровня
            $('.c-header__nav__level-3-back').show(); //показываем 3 уровень
        });

        //новое меню
        $('body').on('click', '.c-header__nav__level-left__link.parent', function (e) {
            e.preventDefault();
            $(this).next('ul').addClass('is-active');
            $('.c-header__nav__level-2-back').show();
            $('.c-header__nav__level-back').hide();
        });

Главное, что задокументировано

phpBidlokoder2 phpBidlokoder2, (Updated )

Комментарии (2, +2)