Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Что такое гавнокод? (https://javascript.ru/forum/misc/54344-chto-takoe-gavnokod.html)

gam0ra 13.03.2015 23:10

Что такое гавнокод?
 
Что такое гавнокод?

рони 13.03.2015 23:19

gam0ra,
http://govnokod.ru/javascript

gam0ra 13.03.2015 23:32

рони,
А как определить на говнокодил ты или нет?

Bond 14.03.2015 04:03

gam0ra,
Дай более опытному программеру почитать свой код, если будет ржать - значит говнокод. :lol:
Вон рони ссылку дал - там ухохотаться можно:)

ruslan_mart 14.03.2015 07:44

gam0ra, показывай свой код. :)

gam0ra 14.03.2015 10:52

Ruslan_xDD,
Вот небольшой кусок) Может ты мне какой нить свой кусок кода тоже?
$(document).ready(function(){
    reSizeH();
});
function storePage(val){
    if(val in pageArray){
        var spDiv = $('#sp_div');
        spDiv.empty();
        spDiv.append(pageArray[val]);
    }
    else{
        if(val == 'news'){
            var spDiv = $('#sp_div');
            spDiv.empty();
            getNews(0);
            spDiv.append('news');
        }else if(val == 'ad'){
            var spDiv = $('#sp_div');
            spDiv.empty();
            spDiv.append('ad');
        }
    }
}
function reSizeH(){
    var wh = $(window).height();
    var uc = $('#store_body').height();
    if(uc <= wh){
        if(document.getElementById('place')){
            wh = wh - 180;
        }
        $('#store_body').css('min-height',wh+'px');
    }
}

По школе говнакодства от 0 до 10 скока?

bes 14.03.2015 12:08

Цитата:

Сообщение от gam0ra
Что такое гавнокод?

Что такое гавнокод? Что это такое гавнокод?
И увидеть нельзя, и нельзя потрогать.
гавнокод – это когда, гавнокод – это тогда, когда
Все друг другу друзья и летать все могут!
...

zhurchik 14.03.2015 12:42

А это говно-код, как вы думаете?

функция $() - не Jquery это моя (пользовательская) функция
ниже представленный код работает на голом JS без каких-либо библиотек.

hunt = {
isBlocked:false,
href:[],
q:'',

find: function()
{
	if (this.isBlocked){return false;}
	this.isBlocked = true;

	if (document['searchform']['q'].value != '') {
		this.q = encodeURIComponent(document['searchform']['q'].value);
	}

	var allFormNodes = document['advancedsrc'].getElementsByTagName("input");

	for (var i=0; i < allFormNodes.length; i++)
	{
		if (allFormNodes[i].type == 'text' || allFormNodes[i].type == 'search' || allFormNodes[i].type == 'hidden') {
			if (allFormNodes[i].value == '') {
				continue;
			}
			this.q += "&"+ allFormNodes[i].name +"="+ allFormNodes[i].value;

		} else if (allFormNodes[i].type == 'radio' || allFormNodes[i].type == 'checkbox') {
			if (allFormNodes[i].checked){
				this.q += "&"+ allFormNodes[i].name +"="+ allFormNodes[i].value;
			}
		}
	}

	this.newRequest();

	return false;
},


newRequest: function()
{
	if (typeof this.href[0] === 'undefined'){
		this.href = ["/src"];
	}

	this.q = this.href[0] +"?q="+ this.q;

$("searchResults").innerHTML = '<div class="c">Загрузка данных... '+ progress +'</div>';

	xhr({_push:"searchengine",
	file: this.q + (this.q.indexOf("?") < 0 ? "?" : "&") +"ajax",
	answer:function(d)
	{
		hunt.isBlocked = false;

		$("searchResults").innerHTML = d;

		hunt.q = '';
		inc.addHistory(hunt.q);
	}});
},


createPopup: function(e)
{
	killPropagation(e);

	if ($("popup"))
	{
		if ($("popup").style.display == "none") {
			$("popup").style.marginTop = (scroll.curPosition() + 107) +"px";
			$("popup").style.display = "block";
			this.destroyPopup();
			inc.addHistory(hunt.href[0]);
		}
		return false;
	}

	this.destroyPopup();

	if (this.isBlocked){return false;}
	this.isBlocked = true;


	if (typeof this.href[0] === 'undefined'){
		this.href = ["/src"];

	} else {
		if (typeof this.href[1] !== 'undefined' && pathname() != this.href[1]) {
			this.href = ["/src"];
		}
	}

	this.href[1] = pathname();


	var popup = document.createElement("div");
	popup.innerHTML = '<div id="popup" class="c">Загрузка... '+ progress +'</div>';
	$("content").appendChild(popup);

	xhr({_push:"searchengine",
	file: this.href[0] +"?ajax",
	answer:function(d)
	{
		var popup = $("popup");
		if (!popup) {//На случай, если ответ уже поступил, но юзер в этот момент на другую страницу перешел
			return false;
		}

		d = reincJS.cut(d);

		popup.parentNode.innerHTML = d;

		reincJS.put("popup");

		popup.style.marginTop = (scroll.curPosition() + 107) +"px";

		inc.addHistory(hunt.href[0]);

		hunt.isBlocked = false;
	}});
},


destroyPopup: function()
{
	document.body.onmousedown = function(e)
	{
		if (mywhich() != 1) {
			return false;
		}

		var e = myevent(e);
		var obj = e.target || window.event.srcElement;

		if (obj.tagName == "A")
		{
			document.body.onmousedown = function(){};
			hunt.isBlocked = false;

			if (typeof http['searchengine'] !== "undefined") {
				http['searchengine'].abort();
				delete http['searchengine'];
			}
			return false;
		}

		if (hunt.isBlocked) {
			return false;
		}


		do {
			if (obj.tagName == "DIV")
			{
				var id = obj.getAttribute("id");
				if (typeof id === "string" && id == 'popup') {
					break;
				}
			} else {
				if (obj.tagName == "BODY")
				{
					hunt.isBlocked = false;
					hunt.q = '';

					document.body.onmousedown = function(){};

					$("popup").style.display = "none";

					inc.addHistory(hunt.href[1]);
					document['searchform']['q'].value = '';

					break;
				}
			}

			obj = obj.parentNode;

		} while (true);
	};
}
}

nerv_ 14.03.2015 13:34

Цитата:

Сообщение от gam0ra
По школе говнакодства от 0 до 10 скока?

6-7 of 10

Цитата:

Сообщение от zhurchik
А это говно-код, как вы думаете?

9-10 of 10


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