Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 04.01.2012, 22:15   #1
nonsys
Пользователь
 
Регистрация: 25.09.2011
Сообщений: 11
По умолчанию Нужно разобратся

Доброе время суток.
Помогите разобрать код одной функции (из ВК).

Код:
// ### Для понятности и здесь присутствует библиотека jQuery
function isFunction(obj) {return Object.prototype.toString.call(obj) === '[object Function]'; }
// ###
function extend() {
  var a = arguments, target = a[0] || {}, i = 1, l = a.length, deep = false, options;

  if (typeof target === 'boolean') {
    deep = target;
    target = a[1] || {};
    i = 2;
  }

  if (typeof target !== 'object' && !isFunction(target)) target = {};

  for (; i < l; ++i) {
    if ((options = a[i]) != null) {
      for (var name in options) {
        var src = target[name], copy = options[name];

        if (target === copy) continue;

        if (deep && copy && typeof copy === 'object' && !copy.nodeType) {
          target[name] = extend(deep, src || (copy.length != null ? [] : {}), copy);
        } else if (copy !== undefined) {
          target[name] = copy;
        }
      }
    }
  }

  return target;
}
Если получится то объясните назначение этой функции.
А если можно то помогите понять вот этот момент
// "target = a[0] || {}"
и этот
// "for (var name in options)"
и этот
// "src || (copy.length != null ? [] : {})" хотя я думаю он похож на "target = a[0] || {}"

Если что-то не так пишите.
P.S. Это моя первая тема на сайте...

Последний раз редактировалось nonsys; 04.01.2012 в 22:18.
nonsys вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
надо разобратся anabiosis74 Компьютерное железо 2 05.12.2011 05:23
разобратся с функцией. nikolas0 Помощь студентам 1 20.12.2010 17:20
нужно разобратся с полиграфом=) Iskander1348 Помощь студентам 10 12.07.2010 23:40
нужно разобратся с кодом arthur457 Общие вопросы Delphi 3 03.04.2010 14:43
Помогите разобратся!!! rex2003 Свободное общение 1 18.02.2007 20:37