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

    +6

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    function optimal_weight(pol, growth) {
        return (pol == 278 ? 
            (4 * growth / 2.54 - 128) * 0.453 :                 // мужчины
            (3.5 * growth / 2.54 - 108) * 0.453).toFixed(2);    // и другие
    }

    aat, 27 Октября 2016

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

    +3

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    let playerHTML5 = `
      <${this.music?"audio":"video height='360' class='video-js vjs-sublime-skin' id='video'"} width="640" controls>
        <source src="${data.playlist[1].url}" id="src" type="${this.music?"audio/mpeg":"video/mp4"}">
        Плеер нер работает. Возможно, ваш браузер устарел.
      </${this.music?"audio":"video"}>
      ${(!this.music && !isEmpty(this.chapters[index].ext_audio))?'<audio id="audio" controls> \
         <source src="" type="audio/mp3"> \
      </audio>':''}
      `;

    Это ES6, детка. Теперь мы можем написать строку внутри строки внутри строки!

    Frederica_Bernkastel, 27 Октября 2016

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

    +6

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    self.chapters[i].caption = !self.section ? self.music ? self.ids[i].id3 != undefined && 
      self.ids[i].id3.tags != null && self.ids[i].id3.tags.title ? self.ids[i].id3.tags.title[0] : 
      "Трек " + counter : "Серия " + counter : self.section + self.music ? self.ids[i].id3 != undefined && 
      self.ids[i].id3.tags != null && self.ids[i].id3.tags.title ? self.ids[i].id3.tags.title[0] : 
      self.music ? "Трек " + counter : self.section + " - Серия " + counter : " - серия " + counter; // <-- fking shit!

    Многоуровневые тернарники. Чтоб жизнь мёдом не казалась.

    Frederica_Bernkastel, 27 Октября 2016

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

    +1

    1. 1
    if (attrs instanceof Attr) {

    Так вот ты какой, великий Аттр!

    NickPepper, 26 Октября 2016

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    for (var i = 0; i < algs.length; i++) {
        var aC = algs[i].firstChild.nodeValue;
        if (mas.some(function (v) {return aC.indexOf(v) !== -1;})) {
                return true;
        }
    }

    Х проссышь...

    NickPepper, 26 Октября 2016

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

    −1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    setServerURL: function(value) {
        if (value) {
            return localStorage.setItem('ServerURL', value);
        } else {
            return delete localStorage['ServerURL'];
        }
    }

    Ни буквы не придумал - 1:1 как в исходничке...

    NickPepper, 26 Октября 2016

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

    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
    if ($(window).width() <= 1400) {
    			$("#im-1").css("height", "631px");
    			$("#sl-right").css("width", "280px");
    			$("#sl-right img").css("width", "280px");
    			$("#sl-right img").css("height", "auto");
    			if (window.location.href.split('=')[1] != "childrens" && window.location.href.split('=')[1] != "spa") {
    				$(".bnimg").each(function () {
    					$(this).css("width", $(window).width() - 60 + "px");
    					$(this).css("margin-top", "-" + ($("#bnimg").height() - 300) / 2 + "px");
    				});
    			}
    			$("#sltext2").css("right", "281px");
    			$("#sltext2").css("top", "187px");
    			$("#sltext2").css("line-height", "30px");
    			$("#sltext2 b").hide();
    			$("#sltext2").css("width", "300px");
    }

    И вот теперь пойди пойми что тут и зачем резайзится. про адаптивность можно и не думать

    omcg33, 24 Октября 2016

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

    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
    const el = document.getElementById('col');
    let iterator = next();
    function* next() {
    const arr = ["green", "blue", "red", "orange"];
      for (var i = 0; i <= arr.length;) {
        yield arr[i++];
      }
    }
    (function newBackground() {
      el.style.background = iterator.next().value;
      setTimeout(newBackground, 1000);
    }());

    AjiTae, 22 Октября 2016

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

    −3

    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
    class MapUtils {
        static isPrimitive(obj) {
            switch (typeof obj) {
                case "string":
                case "number":
                case "boolean":
                    return true;
            }
            return !!(obj instanceof String || obj === String ||
            obj instanceof Number || obj === Number ||
            obj instanceof Boolean || obj === Boolean);
        }
    
        static getClazz(target: any, propertyKey: string): any {
            return Reflect.getMetadata("design:type", target, propertyKey)
        }
    
        static getJsonProperty<T>(target: any, propertyKey: string):  IJsonMetaData {
            return Reflect.getMetadata(jsonMetadataKey, target, propertyKey);
        }
    
        static deserialize<T>(clazz:{new(): T}, jsonObject) {
            if ((clazz === undefined) || (jsonObject === undefined)) return undefined;
            let obj = new clazz();
            Object.keys(obj).forEach((key) => {
                let propertyMetadataFn:(IJsonMetaData) => any = (propertyMetadata)=> {
                    let propertyName = propertyMetadata.name || key;
                    let innerJson = undefined;
                    innerJson = jsonObject ? jsonObject[propertyName] : undefined;
                    let clazz = MapUtils.getClazz(obj, key);
                    if (!MapUtils.isPrimitive(clazz)) {
                        return MapUtils.deserialize(clazz, innerJson);
                    } else {
                        return jsonObject ? jsonObject[propertyName] : undefined;
                    }
                };
    
                let propertyMetadata:IJsonMetaData = MapUtils.getJsonProperty(obj, key);
                if (propertyMetadata) {
                    obj[key] = propertyMetadataFn(propertyMetadata);
                } else {
                    if (jsonObject && jsonObject[key] !== undefined) {
                        obj[key] = jsonObject[key];
                    }
                }
            });
            return obj;
        }
    }

    Учимся кодить правильно: http://cloudmark.github.io/Json-Mapping/

    HiNeX, 20 Октября 2016

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

    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
    focused(evt, errors) {
    	let form = evt.target
    
    	const output = errors.map((error)=> {
    
    		// Find first component with error on form and set focus to it
    
    		let focusedInput = (Object.keys(error) == "phonebookId") ? Object.keys(error) :
    			(Object.keys(error) == "phonebook_str") ? Object.keys(error) :
    				(Object.keys(error) == "message") ? Object.keys(error) :
    					(Object.keys(error) == "image") ? Object.keys(error) :
    						(Object.keys(error) == "buttonLink") ? Object.keys(error) :
    							(Object.keys(error) == "messageSms") ? Object.keys(error) : false
    		return focusedInput.shift()
    	})
    
    	const selector = output.shift()
    	form.querySelector('[id="' + selector + '"]').focus()
    
    	return selector
    }

    Что тут сказать... Работа с фрилансерами с низкой стоимостью чревата вот такими чудесами =)
    (Object.keys(error) == "phonebookId") это отработает, так как при сравнение JS возьмет первый элемент из массива, но вопрос зачем так сложно он остается.

    artzub, 02 Октября 2016

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