|
82 / 82 / 50
Регистрация: 22.09.2012
Сообщений: 495
|
||||||||||||||||
Объясните строку в коде пожалуйста20.06.2013, 11:04. Показов 1655. Ответов 6
Метки нет (Все метки)
Всем доброго времени суток. Недавно начал изучение javascript, поначалу всё не плохо понимал, но сейчас дело дошло до замыканий, обёрток и this - у меня в голове теперь просто каша. В общем, имеется задача:
"Создайте декоратор makeLogging(func, log), для функции func возвращающий обёртку, которая при каждом вызове добавляет её аргументы в массив log. Допускается func с любым набором аргументов." Это её решение:
0
|
||||||||||||||||
| 20.06.2013, 11:04 | |
|
Ответы с готовыми решениями:
6
Объясните пожалуйста одну строку в коде
Объясните мне пожалуйста строчку в коде |
|
Просто любитель
|
|
| 20.06.2013, 22:23 | |
|
dalay_lama, apply принимает вторым аргументом массив и передает его функции, методом которой вызван, как набор аргументов (a,b, c, ...). А первым аргументом — да, принимает контекст.
1
|
|
|
82 / 82 / 50
Регистрация: 22.09.2012
Сообщений: 495
|
|
| 21.06.2013, 03:51 [ТС] | |
|
Всё равно не могу понять, если он "принимает вторым аргументом массив и передает его функции", но мы то передаём объект?
0
|
|
|
82 / 82 / 50
Регистрация: 22.09.2012
Сообщений: 495
|
|
| 21.06.2013, 14:02 [ТС] | |
|
кажется более менее понял. Поправьте меня пожалуйста если я не прав - это похоже на то, как в учебнике показывалось, метод обозвали - "одалживание метода", и в пример приводили как можно объекту arguments, добавить метод объекта array. вот пример: arguments.join = [].join; теперь у arguments есть метод join, т.к. join использует только элементы массива [1],[2]... и свойство length, то arguments может использовать этот метод. Аналагично с методом apply, я правильно понимаю? а можно ли где-нибудь посмотреть реализацию метода apply?
0
|
|
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
||||||
| 21.06.2013, 17:52 | ||||||
|
имеем два объекта - AAA и BBB
у первого объекта есть свойство AAA.prop = true; а у второго такого свойства не определено имеем функцию myFunc (), внутри которой проверяем истинность/ложность свойства this.prop если такое свойство существует (и определено истинным), то страница станет красной если же такого свойства не существует, то страница станет синей 1. запускаем функцию просто так (имя и круглые скобки) this тогда будет текущим окном, у которого нет свойства prop - окно синее 2. запускаем функцию посредством метода apply и передаём ей объект AAA this станет объектом AAA, и раз свойство prop у него имеется, то страница станет красной 3. запускаем функцию посредством метода apply и передаём ей объект BBB this станет объектом BBB, свойства prop у которого нет, страница снова станет синей 4. запускаем функцию посредством метода apply и передаём ей объект null this станет текущим окном, свойства prop у которого нет, страница будет синей
1
|
||||||
|
82 / 82 / 50
Регистрация: 22.09.2012
Сообщений: 495
|
|
| 22.06.2013, 04:06 [ТС] | |
|
большое спасибо за объеснение. Но я не много не об этом спросил. То что вы описали я уже понимал, более или менее, но теперь хорошо это понимаю) у меня именно не укладывается в голове то, что apply передаёт массив, но при этом, передача ОБЪЕКТА arguments срабатывает. После ответа @GuardCat, я вроде бы уловил, и хотел узнать правильно ли я понял или нет.
0
|
|
| 22.06.2013, 04:06 | |
|
Помогаю со студенческими работами здесь
7
объясните пожалуйста ошибку в коде mfs
Объясните строку в коде
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи
и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|