Сборка от 17 марта 2017 г



Download 9,9 Mb.
bet82/349
Sana26.04.2022
Hajmi9,9 Mb.
#582433
TuriУчебник
1   ...   78   79   80   81   82   83   84   85   ...   349
Bog'liq
ilja kantor sovremennyj uchebnik-1chast PdfToWord

Пример из jQuery

Во фреймворке jQuery есть метод wrap , который обёртывает один элемент вокруг другого:


var img = $(''); // создали новые элементы (jQuery‐синтаксис) var div = $('

'); // и поместили в переменную


img.wrap(div); // обернуть img в div div.append('');


Результат кода после операции wrap – два элемента, один вложен в другой:





А что же после append ?


Можно предположить, что добавится в конец div , сразу после img … Но ничего подобного!


Искусный ниндзя уже нанёс свой удар и поведение кода стало неправильным, хотя разработчик об этом даже не подозревает. Как правило, методы jQuery работают с теми элементами, которые им переданы. Но не здесь!


Внутри вызова img.wrap(div) происходит клонирование div и вокруг img оборачивается не сам div , а его клон. При этом исходная переменная div
не меняется, в ней как был пустой div , так и остался.
В итоге, после вызова получается два независимых div'а : первый содержит img (этот неявный клон никуда не присвоен), а второй – наш span . Объяснения не очень понятны? Написано что‑то странное? Это просто разум, привыкший, что соглашения уважаются, не допускает мысли, что вызов
wrap – неявно клонирует элемент. Ведь другие jQuery‑методы, кроме clone этого не делают.

Как говорил Учитель : «В древности люди учились для того, чтобы совершенствовать себя. Нынче учатся для того, чтобы удивить других».




Краткость – сестра таланта!


Пишите «как короче», а не как понятнее. «Меньше букв» – уважительная причина для нарушения любых соглашений. Ваш верный помощник – возможности языка, использованные неочевидным образом.


Обратите внимание на оператор вопросительный знак '?' , например:

// код из jQuery


i = i ? i < 0 ? Math.max(0, len + i) : i : 0;

Разработчик, встретивший эту строку и попытавшийся понять, чему же всё‑таки равно i , скорее всего придёт к вам за разъяснениями. Смело скажите ему, что короче – это всегда лучше. Посвятите и его в пути ниндзя. Не забудьте вручить Дао дэ цзин .





Download 9,9 Mb.

Do'stlaringiz bilan baham:
1   ...   78   79   80   81   82   83   84   85   ...   349




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish