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

    +4

    1. 1
    2. 2
    3. 3
    4. 4
    function repeattimer(functionname, looptime){
    	eval(functionname+"();");
    	setTimeout("repeattimer(\""+functionname+"\", "+looptime+");", looptime);
    }

    Не знаю насчёт того, ГК это или нет, но я бы сделал совсем не таким способом.

    Запостил: XyHb, 28 Июля 2010

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

    +9

    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
    function createIMG(src,id,width,height,border)
    {
    	var s='<IMG SRC=';
    	s+=addquo(src);
    	if(id!='')
    		s+=' ID='+id;
    	if(width&&height)
    	{
    		if(width>0)
    			s+=' WIDTH='+width;
    		if(height>0)
    			s+=' HEIGHT='+height;
    	}
    	s+=' BORDER='+border+'>';
    	return s;
    }

    Оно делает картинку

    Запостил: ursus, 27 Июля 2010

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

    +14

    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
    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
    star1.onmouseover = function () {
    star1.className = 'selected';
    }
    star1.onmouseout = function () {
    star1.className = 'not-selected';
    }
    star2.onmouseover = function () {
    star1.className = 'selected';
    star2.className = 'selected';
    }
    star2.onmouseout = function () {
    star1.className = 'not-selected';
    star2.className = 'not-selected';
    }
    star3.onmouseover = function () {
    star1.className = 'selected';
    star2.className = 'selected';
    star3.className = 'selected';
    }
    star3.onmouseout = function () {
    star1.className = 'not-selected';
    star2.className = 'not-selected';
    star3.className = 'not-selected';
    }
    star4.onmouseover = function () {
    star1.className = 'selected';
    star2.className = 'selected';
    star3.className = 'selected';
    star4.className = 'selected';
    }
    star4.onmouseout = function () {
    star1.className = 'not-selected';
    star2.className = 'not-selected';
    star3.className = 'not-selected';
    star4.className = 'not-selected';
    }
    star5.onmouseover = function () {
    star1.className = 'selected';
    star2.className = 'selected';
    star3.className = 'selected';
    star4.className = 'selected';
    star5.className = 'selected';
    }
    star5.onmouseout = function () {
    star1.className = 'not-selected';
    star2.className = 'not-selected';
    star3.className = 'not-selected';
    star4.className = 'not-selected';
    star5.className = 'not-selected';
    }

    Реализация звёздочек для рейтинга. При наведении мышкой на звёздочку все предшествующие ей звёздочки "загораются", при отведении — "потухают".

    Запостил: eval, 25 Июля 2010

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

    +9

    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
    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
    // Color and text
    // -- Безупречный
    if (nScore >= 90)
    {
    var strText = "Отличный пароль! Главное не забыть его :) ";
    var strColor = "#0ca908";
    }
    // -- Очень хороший
    else if (nScore >= 80)
    {
    var strText = "Очень хороший";
    vstrColor = "#7ff67c";
    }
    // -- Хороший
    else if (nScore >= 70)
    {
    var strText = "Хороший";
    var strColor = "#1740ef";
    }
    // -- Давольно нормальный
    else if (nScore >= 60)
    {
    var strText = "Достаточно неплохо";
    var strColor = "#5a74e3";
    }
    // -- Нормальный
    else if (nScore >= 50)
    {
    var strText = "Нормально";
    var strColor = "#e3cb00";
    }
    // -- Слабый
    else if (nScore >= 25)
    {
    var strText = "Слабенько";
    var strColor = "#e7d61a";
    }
    // -- Очень плохой
    else
    {
    var strText = "Ужас. (qwerty и то лучше :) ) ";
    var strColor = "#e71a1a";
    }

    else if (nScore >= 25)
    {
    var strText = "Слабенько";
    var strColor = "#e7d61a"; // -- Слабенько?WTF???????
    }

    Взято с блога великого кодера darkoff.ru

    Запостил: BlincAttack, 25 Июля 2010

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

    +4

    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
    30. 30
    31. 31
    32. 32
    33. 33
    <script LANGUAGE="JavaScript">
        <!--
        function checkEmailAddress(email) {
            var allowedChars = ".-_@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
            var numberAt = 0;
            var indexAt = -1;
            var thisChar = "";
            if (email == "")
                return 0;
            for(j=0 ; j <= email.length ; j++) {
                thisChar = email.substring(j,j+1);
                if (allowedChars.indexOf(thisChar) == -1) {
                    return 0;
                }
                if (thisChar == "@") {
                    if (j == 0 || j >= email.length - 3 || numberAt > 0)
                        return;
                    numberAt++;
                    indexAt = j;
                }
            }
            if (numberAt != 1)
            {
                return 0;
            }
            if (email.substring(indexAt+1).indexOf(".") <= 0)
                return;
            for (j=0; j < email.indexOf("@"); j++) {
                if (allowedChars.indexOf(email.substring(j,j+1)) >= 4)  // Email address is correct!!
                    return 1;
            }
            return;
        }

    В данный момент используется в зарубежном SaaS-решении

    Запостил: wunge, 20 Июля 2010

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

    +14

    1. 1
    function getCodeByCode(code)

    хорошее название функции

    Запостил: mozg_raka, 20 Июля 2010

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

    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
    <script type="text/javascript">
    function TrackTransaction(pageTracker)
    {
    
    }
    </script>
    <script type="text/javascript">
    var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
    document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
    var hndl = window.setTimeout("StartTracking()", 100);
    
    function StartTracking()
    {						
    if (typeof(_gat) == 'object')
    {					
    window.clearTimeout(hndl);
    var pageTracker =_gat._getTracker("UA-3200267-1");
    pageTracker._initData();
    pageTracker._trackPageview();
    TrackTransaction(pageTracker);
    }
    else
    {
    hndl = window.setTimeout("StartTracking()", 1000);
    }
    }	
    </script>

    laredoute . ru

    TrackTransaction универсальная функция )

    Запостил: atarix12, 20 Июля 2010

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

    +16

    1. 1
    <script type="text/javascript" src='/wps/CacheProxyServlet/colorPalette/default/browserVendor/Netscape/browserName/Navigator/browserVersion/unknown/locale/ru/forwardurl/wps/themes/html/pgu/./js.jsp'></script>

    с сайта http://portal.rosreestr.ru

    Запостил: Serebro, 19 Июля 2010

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

    +18

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    function BIN(a) {
    	var x = false;
    	for (var i = 0; i < 50; i++) {
    		if (Math.pow(2, i) == a) {
    			x = true;
    		}
    	}
    	return x;
    }

    Проверка числа на степень двойки.

    Запостил: eval, 18 Июля 2010

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

    −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
    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
    Map = function() {
        this._entries = new Array();
    }
    
    Map.prototype.containsKey = function(key) {
        return this.getEntry(key)!=null;
    }
    
    Map.prototype.get = function(key) {
        var entry = this.getEntry(key);
        return entry!=null ? entry.value : null;
    }
    
    Map.prototype.put = function(key, value) {
        var entry = this.getEntry(key);
        if (entry!=null) {
            entry.value = value;
        } else {
            entry = new Map.Entry(key, value);
            this._entries[this._entries.length] = entry;
        }
    }
    
    Map.prototype.size = function() {
        return this._entries.length;
    }
    
    Map.prototype.getEntry = function(key) {
        for (var i=0; i<this._entries.length; i++) {
            if (this._entries[i].key==key)
                return this._entries[i];
        }
        return null;
    }
    
    Map.prototype.entries = function() {
        return this._entries;
    }
    
    Map.prototype.keys = function() {
        var result = new Array();
        for (var i=0; i<this._entries.length; i++) {
            result[result.length] = this._entries[i].key;
        }
        return result;
    }
    
    Map.prototype.values = function() {
        var result = new Array();
        for (var i=0; i<this._entries.length; i++) {
            result[result.length] = this._entries[i].value;
        }
        return result;
    }
    
    Map.prototype.addAll = function(map) {
        if (map==null)
            return;
        var oe = map.entries();
        for (var i=0; i<oe.length; i++) {
            this.put(oe[i].key, oe[i].value);
        }
    }
    
    Map.prototype.toString = function() {
        return "[Map{size:"+this._entries.length+", entries:"+this._entries+"}]";
    }
    
    Map.Entry = function(key, value) {
        if (arguments.length==0)
            return;
        this.key = key;
        this.value = value;
    }
    
    Map.Entry.prototype.toString = function() {
        return "[Entry{key:"+this.key+", value:"+this.value+"}]";
    }

    То что любой объект и так работает как Map автор видимо не знал.
    Можно было бы предположить, что автор это знал, но написал этот Map для того чтобы использовать произвольные объекты как ключи, однако во всех обнаруженных использованиях этой Map ключами были строки.

    Запостил: borka, 17 Июля 2010

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