1. JavaScript / Говнокод #27672

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    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
    let users = [
      user_1 = {
        user_name: 'Первый',
        user_login: 'l1',
        user_password: 'p1'
      },
      user_2 = {
        user_name: 'Второй',
        user_login: 'l2',
        user_password: 'p2'
      },
      user_3 = {
        user_name: 'Третий',
        user_login: 'l3',
        user_password: 'p3'
      }
    ]
    
    function authorisation(guest_login, guest_password) {
      for (let key in users) {
        if(guest_login == users[key].user_login && guest_password == users[key].user_password) {
          return alert('Хай ' + users[key].user_name);
        } else {
          alert('Чёт не то'); continue;
        }
      }
    }
    
    authorisation(prompt('Введите логин'), prompt('введите пароль'))

    Вот казалось бы, ну чего тут сложного? А чёт сложно. Всего-то и нужно - пробегаться по массиву объектов, сверять логины и пароли и либо здороваться с пользователем, либо выдавать сообщение об ошибке. Находить пользователя у меня получается, проблема в том, что если он не первый по счёту, то сообщение об ошибке выпадает на каждого предыдущего. Ну и если крутить вертеть последовательность, то просто на каждого с кем данные не совпадают. Как бы мне этого избежать?

    shuric, 18 Сентября 2021

    Комментарии (22)
  2. JavaScript / Говнокод #27667

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    type int = 1;
    function main() {
        print("try/catch");
    
        let t = 1;
    
        try {
            throw 1;
        } catch (v: int) {
            print("Hello ", v);
            v = t;
        }
    
        assert(v == t);
    
        print("done.");
    }

    Ура ура.. новый говнокод подоспел... это гавно теперь параметры в тело "catch"-а передает

    ASD_77, 14 Сентября 2021

    Комментарии (31)
  3. JavaScript / Говнокод #27666

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    let randomNum = Math.floor(Math.random() * 10) + 1;
    let inputNum
    
    do {
      inputNum = prompt('Угадай циферку!')
      if (inputNum < randomNum) {
        alert('Недобор');
      } else if (inputNum > randomNum) {
        alert('Перебор');
      } else if (typeof inputNum === "string") {
        alert('ну не, циферку же!');
      } else if (inputNum == null || inputNum == '') {
        alert('Покасики!');
      } else if (inputNum === randomNum) { 
        alert('Угадал!!!'); break;
        }
    } while (inputNum != randomNum);

    Оно сначала совсем не работало. Потом вдруг заработало. Потом я ему дал полежать, настояться, и оно работать перестало опять О_о моя нипанимать

    shuric, 14 Сентября 2021

    Комментарии (8)
  4. JavaScript / Говнокод #27656

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    function main()
    {
    	print("before");		
    
    	try
    	{
    		throw 1;
    	}
    	catch (x: any)
    	{
    		print("catch");		
    	}
    
    	print("end");		
    }

    Самый большей говнокод за всю историю человечества сделан.

    ASD_77, 10 Сентября 2021

    Комментарии (116)
  5. JavaScript / Говнокод #27647

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    function main() {
        for await (const v of [1, 2, 3, 4, 5]) {
            print(v);
        }
    
        print("done.");
    }

    вот такой чудный говнокод подоспел... (иногда глючит если врубить GC - видимо я что-то не добавил)

    ASD_77, 06 Сентября 2021

    Комментарии (16)
  6. JavaScript / Говнокод #27645

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    async function f()
    {
    	print("Hello World");	
    }
    
    function main()
    {
    	await f();
    }

    Ну что заскучились... есть новость... первый async/await ... так что с почином - асинков. но это только начало ... Для любознательных дампик... https://pastebin.com/rwnsrdLx (для SEO https://github.com/ASDAlexander77/TypeScriptCompiler) и результат работы

    C:\temp>C:\dev\TypeScriptCompiler\__build\tsc\bin\tsc.exe --emit=jit --shared-libs=C:\dev\TypeScriptCompiler\__build\tsc\bin\TypeScriptGCWrapper.dll --shared-libs=C:\dev\TypeScriptCompiler\3rdParty\llvm\debug\bin\mlir_async_runtime.dll C:\temp\1.ts  
    Hello World

    ASD_77, 04 Сентября 2021

    Комментарии (100)
  7. JavaScript / Говнокод #27639

    +2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    Complex numbers:
    >> Complex()({r: 2, i: 0} / {r: 1, i: 1} + {r: -3, i: 2}))
    <- {r: -2, i: 1}
    
    Automatic differentiation:
    Let f(x) = x^3 - 5x:
    >> var f = x => Dual()(x * x * x - {x:5, dx:0} * x);
    
    Now map it over some values:
    >> [-2,-1,0,1,2].map(a=>({x:a,dx:1})).map(f).map(a=>a.dx)
    <- [ 7, -2, -5, -2, 7 ]
    i.e. f'(x) = 3x^2 - 5.
    
    Polynoomials:
    >> Poly()([1,-2,3,-4]*[5,-6]).map((c,p)=>''+c+'x^'+p).join(' + ')
    <- "5x^0 + -16x^1 + 27x^2 + -38x^3 + 24x^4"

    В ЙажаСцрипт завезли перегрузку операторов.
    https://gist.github.com/pyrocto/5a068100abd5ff6dfbe69a73bbc510d7

    3.14159265, 02 Сентября 2021

    Комментарии (6)
  8. JavaScript / Говнокод #27635

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    // больше говнокодить не могу. сайт не дает мне писать коменты.
    // на последок говнокод
    
                    const adapter = await navigator.gpu.requestAdapter();
                    const device = this.device = await adapter.requestDevice();
                    if (!device) {
                        document.body.className = 'error';
    		            alert("No WebGPU");
                        return;
                    }
    
                    const computeShaderSource = document.getElementById("calculate").value;
    
                    const computePipeline = device.createComputePipeline({
                        compute: {
                            module: device.createShaderModule({
                                code: computeShaderSource,
                            }),
                            entryPoint: 'main',
                        },
                    });

    просто говнокод. больше говнокодить не могу. сайт не дает мне писать коменты.

    ASD_77, 01 Сентября 2021

    Комментарии (11)
  9. JavaScript / Говнокод #27631

    −1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    function* foo2() {
    	yield 2;
    	yield 3;
    }
    
    function* foo() {
       yield 1;
    
       yield* foo2();
    	
       yield 4;
    }
    
    function main() {
        for (const o of foo()) {
            print(o);
        }
    
        print("done.");
    }

    продолжаем "наговнокодить". Добавил "елдак" со "звездой". Где тут наши препроцессорописатели.. дайте аналог на C/C++.

    ASD_77, 31 Августа 2021

    Комментарии (50)
  10. JavaScript / Говнокод #27630

    −1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    function* foo() {
        let i = 1;
        while (i < 10)
    	    yield ++i;
    }
    
    function main() {
        for (const o of foo()) {
            print(o);
        }
    
        print("done.");
    }

    возрадуйтесь браться и сестры .. я вам благую весть принес... наконец-то я доделал это ..говно.. и "елдаки" теперь работают нормально.

    ASD_77, 30 Августа 2021

    Комментарии (17)