- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
#pragma strict
function Start () {
function OnMouseDown (); {
if(name=="new") { Application.LoadLevel("procedural"); }
if(name=="set") { }
if(name=="exit") { Application.Quit(); }
}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
#pragma strict
function Start () {
function OnMouseDown (); {
if(name=="new") { Application.LoadLevel("procedural"); }
if(name=="set") { }
if(name=="exit") { Application.Quit(); }
}
}
На ГК был баян типа такого:
Действительно, в ЭКМАскрипте есть автозакрытие оператора, когда транслятор автоматически дописывает точку с запятой там, где считает нужным.
Функция возвращает JSON-объект {status: "complete"}.
Перенесём фигурную скобку на следующую строку:
Интерпретатор дополнит этот код так, как будто тут было написано:
Т. е. функция вернёт пустой результат (undefined), а далее будет мёртвый код {status: "complete"}
Иногда автодополнение не срабатывает. Пример есть в Википедии.
Итак, при написании кода на JS нужно соблюдать два правила:
1. Бояться, что сработает автодополнение. Т. е. избегать переноса строки там, где теоретически может быть добавлена точка с запятой.
2. Не полагаться на срабатывание автодополнения. Т. е., наоборот, ставить точку с запятой везде, где нужно разделить операторы.
Вспомнил, что Вконтакте и Твиттер мне иногда (случайно, один раз за несколько сотен просмотров) вместо запрошенной страницы показывают голый JSON. Не отлаживал, почему так происходит, да и воспроизвести это трудно, а дамп всего трафика делать неохота, но чисто гипотетически это может быть как раз из-за того, что между return и аргументом влез перевод строки, который браузер по наивности автоматически дополнил точкой с запятой.
Неужели число символов. которое помещается на экран не создавая горизонтальную полосу прокрутки?
4 * 4 = 1 mod 5
3 = -3 mod 6
Хотя, с другой стороны, пробелы в конце строки всегда подозрительны...