Javascript.RU

Создать новую тему Закрытая тема
 
Опции темы Искать в теме
  #31 (permalink)  
Старый 14.01.2012, 01:50
Профессор
Посмотреть профиль Найти все сообщения от Livaanderiamarum
 
Регистрация: 25.12.2011
Сообщений: 786

Сообщение от melky
типа если в qq находится НЕ "",null,undefined,false,0, то попытаться это вызвать
НЕ ЗНАЮ НИ ОДНОЙ ФУНКЦИИ С ТЕЛОМ "",null,undefined,false,0 ))))


Сообщение от melky
нежели такое :
foo && bar(),bar2();
тут не foo bar bar2, а именно
foo && foo ()? а еще можно делать так

return foo && foo ()

своеобразная проверочка на выполнение))
  #32 (permalink)  
Старый 14.01.2012, 01:52
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Livaanderiamarum Посмотреть сообщение
НЕ ЗНАЮ НИ ОДНОЙ ФУНКЦИИ С ТЕЛОМ "",null,undefined,false,0 ))))
есть примеры того, когда нужно выполнять функцию, если она передана?
  #33 (permalink)  
Старый 14.01.2012, 01:56
Профессор
Посмотреть профиль Найти все сообщения от Livaanderiamarum
 
Регистрация: 25.12.2011
Сообщений: 786

Сообщение от melky Посмотреть сообщение
есть примеры того, когда нужно выполнять функцию, если она передана?
/**
 * Xранилище картинок, принимает 2 параметра, либо имя картинки, тогда возвращает картинку
 * @param {Object} imagesHash  ассоциативный массив в стиле {'имяКартинки', 'url'}
 * @param {Function} call функция которая вызовется по завершению загрузки ВСЕХ картинок.
 * @memberOf images
 */
image = (function() {
	// контейнер с картинками
	var imagesContainer = {},
	// счетчик загруженных картинок
	counter = 0,
	// требуется загрузить картинок
	length = 0,
	// калбак
	callback;

	/**
	 * @module images
	 */
	return function(imagesHash, call) {

		// если аргумент один вернуть картинку
		if (arguments.length == 1)
			return imagesContainer[imagesHash];

		// если аргумента 2, то добавить картинки
		if (arguments.length == 2) {
			// зафиксировать калбак
			callback = call

			for (i in imagesHash) {
				var img = new Image()
				img.src = imagesHash[i]
				// при загрузке картинки
				img.onload = function() {
					// прибавить счетчик
					counter++
					// если загружены все картинки вызвать калбак
					if (counter === length) {
						return callback && callback() //вот то место!!!!!!!!!!!!!!!!!!!!!!!!!!!
					}
				}
				// засунуть картинку в контейнер
				imagesContainer[i] = img
				// прибавить длину картинок которых требуется загрузить
				length++
			}
		}
	}
})()

Последний раз редактировалось Livaanderiamarum, 14.01.2012 в 02:00.
  #34 (permalink)  
Старый 14.01.2012, 02:05
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

хм. ладно, завтра почитаю. завтра экзамен по информатике) автомат 95\100. емаё, уже сегодня!

PS "эти" места можно выделять *!* ... */!*
чтобы выделить строку, поставь *!* на пустой строке, и */!* тоже.
  #35 (permalink)  
Старый 14.01.2012, 02:16
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

Сообщение от melky
типа если в qq находится НЕ "",null,undefined,false,0, то попытаться это вызвать
Да, если так предполагается.
__________________
"Matreshka is fucking awesome" © чувак с Reddit
Matreshka.js - Три возможности
  #36 (permalink)  
Старый 14.01.2012, 02:37
Профессор
Посмотреть профиль Найти все сообщения от Livaanderiamarum
 
Регистрация: 25.12.2011
Сообщений: 786

Сообщение от melky Посмотреть сообщение
хм. ладно, завтра почитаю. завтра экзамен по информатике) автомат 95\100. емаё, уже сегодня!

PS "эти" места можно выделять *!* ... */!*
чтобы выделить строку, поставь *!* на пустой строке, и */!* тоже.
но это тэг ошибки я не хотел унижать свой код))
  #37 (permalink)  
Старый 14.01.2012, 10:38
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

Мне кажется проблема не столь глобальна, нежели единообразие кода:

if (arguments.length == 1)
           return imagesContainer[imagesHash];

if (arguments.length == 2) {
//...
}


Для чего придумали фигурные скобки:
- чтобы не париться, где завершился код по условию
- чтобы не парился интерпретатор, где завершился код по условию

В первом случае при просмотре кода нужна лишняя мысль:
- определить, где закончился код по условию

Во втором случае такая мысль не мешает читать код.

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

При расширении задачи по условию приходиться добавлять фигурные скобки, иначе - фиг знает как оно будет работать.

Вывод: лень нифига не двигатель прогресса программиста

ps: Новички здесь абсолютно не при чём, это всё понты
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
  #38 (permalink)  
Старый 14.01.2012, 11:14
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Gozar, согласен целиком и полностью !
  #39 (permalink)  
Старый 14.01.2012, 12:50
Профессор
Посмотреть профиль Найти все сообщения от Livaanderiamarum
 
Регистрация: 25.12.2011
Сообщений: 786

Gozar, нет дело в том что у меня конструкция if означает проверить на что-то, а конструкция
func && func()
и
return func && func()
означают проверить существование функции, если существует, то вызвать, и вернуть тру или фолс.
тут меньше мыслей чем в if потому что тут все конкретезировано под функции.

и да, новички здесь вообще не при чем, кто то зачем-то про них писать начал)

Последний раз редактировалось Livaanderiamarum, 14.01.2012 в 12:52.
  #40 (permalink)  
Старый 14.01.2012, 13:59
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

return func && func();

if (func) {
    return func();
}

Вариант с if проще для понимания(быстрее) через n количество времени. Дело не в возможностях программиста, а скорее в простоте чтения кода. Я уже писал выше.

Я же не мификатор продумывать наиболее короткий код. Раньше я увлекался подобным в PHP, но в дальнейшем решил отказаться. Форматирование и простота понимания кода позволяют строить легко сложные системы, а также возвращаться в будущем к ним и развивать далее.

В разделе работа часто пишут - Программист умеющий писать понятный код. Я считаю это важнее, нежели строить из себя минификатор.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
Закрытая тема



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как создать таймер, как на Letitbit? free_style Javascript под браузер 1 01.07.2010 17:55
While как условные выражения Latro Общие вопросы Javascript 23 27.06.2010 14:53
Как сделать такое fancy menu uonax Элементы интерфейса 2 22.05.2010 12:52
Как сделать электронный каталог продукции? natarius Серверные языки и технологии 6 24.05.2009 20:56
как можно создать iframe со скриптами GOll Общие вопросы Javascript 2 05.05.2009 11:32