- 1
- 2
- 3
- 4
- 5
- 6
var z=fggh.getElementsByTagName("*");
for(iii=0; iii<z.length; z++)
if(z[iii].parentNode==fggh){
//z[iii] - непосредственный потомок fggh, и мы с ним что-то делаем!
…
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+163
var z=fggh.getElementsByTagName("*");
for(iii=0; iii<z.length; z++)
if(z[iii].parentNode==fggh){
//z[iii] - непосредственный потомок fggh, и мы с ним что-то делаем!
…
}
Раз народ решил, что я незаслуженно обижаю юниора, то вот вам ещё более шокирующий пример подобного кода от программиста, с которым мы вместе работали несколько лет назад в одной московской фирме. Тут, к сожалению, воспроизвожу по памяти, но очень близко к оригиналу.
+159
if(@$_POST['submit']) {
$title = "title";
$string = "";
$equal = "=";
$amper = "&";
$to = '[email protected]';
$from='[email protected]';
foreach($_POST as $key => $value) {
foreach($value as $v) {
$string=$string.$key.$equal.$v.$amper;
}
}
mail($to, $title, $string, 'From:'.$from);
}
+156
if (e.button in [-1, -1, -1]) { // попробуйте теперь сообразите, почему true
e.preventDefault();
var rel = this.rel.split(';'),
fn;
switch (e.button) {
case 0:
fn = 'attr';
break;
case 1:
case 2:
fn = 'removeAttr';
break;
default:
return false;
}
$('td.mod[rel="' + rel[0] + '"] input[rel="' + rel[1] + '"]').each(function () {
if (fn === 'removeAttr' && $(this).attr('rel') === 'view') { // Я маразматик
var parts = /(chk\[\d+\]\[\d+\])\[view\]/.exec(this.id),
p = ['add', 'edit', 'del'],
i;
for (i in p) {
$('#' + parts[1].replace(/[[\]]/g, "\\$&") + '\\[' + p[i] + '\\]')[fn]('checked');
}
}
$(this)[fn]('checked', 'checked');
});
return false;
}
ГК, не?
первая строка вот... текущий проект, сижу с ним на данный момент. Почему захотелось так сделать, объяснить не могу. Но работает, ведь
+16
for ( std::size_t i = startIndex; i < indices.size(); ++i )
{
std::size_t idx = i % indices.size();
// Some code that uses idx ...
}
Обогреваем помещение.
+145
var detailsTable = document.getElementById("detailsTable").tBodies[0];
var childs = [], j=0;
for (var i = 0; i < detailsTable.childNodes.length; i++)
if (detailsTable.childNodes[i].nodeType == 1){
childs[j++] = detailsTable.childNodes[i];
}
childs[0].childNodes[1].innerHTML = ''
Наткнулся в нашем проекте. Так юниор получал доступ к ячейкам таблицы. Видно, он не знал про коллекции rows и cells.
+20
#include <iostream>
#include <string>
#include <utility>
#include <tuple>
#include <array>
#include <vector>
#include <algorithm>
#include <iterator>
int main() {
const std::array< const std::pair<const int, const std::string>, 3 > a {{{1,"2"}, {3,"4"}, {5,"6"}}};
std::vector<std::string> r;
std::transform(std::begin(a), std::end(a), std::back_inserter(r), static_cast<std::string const& (*)(const std::tuple<const int, const std::string>&)>(std::get<1, const int, const std::string>));
std::copy(std::begin(r), std::end(r), std::ostream_iterator<const std::string>(std::cout, " "));
return 0;
}
У нас новичку на собеседовании предложили продемонстрировать работу (без конкретики) с кортежами и итераторами.
Что вы можете сказать про его умения, характер и состояние психики? А вы бы этого взяли на работу?
http://liveworkspace.org/code/2DW59a$0
+16
for (;!pool.isEmpty() || started;) {
for (;!pool.isEmpty();) {
GramophoneEvent event = pool.poll();
event.apply(handler);
}
while для слабаков!
−90
/**
* better,faster OLD SCHOOL HACKS ^^
* **/
public static function compareObject(obj1:Object, obj2:Object):Boolean {
var buffer1:ByteArray = new ByteArray();
buffer1.writeObject(obj1);
var buffer2:ByteArray = new ByteArray();
buffer2.writeObject(obj2);
// compare the lengths
var size:uint = buffer1.length;
if (buffer1.length == buffer2.length) {
buffer1.position = 0;
buffer2.position = 0;
// then the bits
while (buffer1.position < size) {
var v1:int = buffer1.readByte();
if (v1 != buffer2.readByte()) {
return false;
}
}
return true;
}
return false;
}
Сравнение объектов сериализацией, по моему такого тут еще не было...
+160
$query = "INSERT INTO analiz SET
obegin = $duss,
vbegin = $leas,
lbegin = $duls,
opodk = $dusc,
vpodk = $leac,
lpodk = $dulc,
oend = $duse,
vend = $leae,
lend = $dule,
ozatr = $dusZ,
vzatr = $leaZ,
lzatr = $dulZ,
ooplat = $dusU,
voplat = $leaU,
loplat = $dulU,
opay = $dusN,
vpay = $leaN,
lpay = $dulN,
date = '$dnow'";
cOde = $pzDc
+133
abstract class A { }
abstract class B
{
void CallValidate(A objA)
{
MethodInfo info = base.GetType().GetMethod("Validate", new[] { objA.GetType() });
if (info == null)
{
throw new ApplicationException("The method 'Validate' with parameter type '" + objA.GetType() + "' is not implemented.");
}
info.Invoke(this, new object[] { objA });
}
}
Метод CallValidate базового класса проверяет наличие метода "Validate" с нужной сигнатурой в своих дочерних классах и вызывает его, если таковой есть, иначе - кидает исключение.