Это редакционная статья нашего последнего JavaScript-бюллетеня, вы можете подписаться здесь .
Привет всем, добро пожаловать в новый год на сайте SitePoint JavaScript. Я надеюсь, что у вас был отличный перерыв (для тех из вас, кто его взял) и вы готовы начать 2017 год на ура.
2016 был безумным годом для JavaScript! Мы видели все более широкое внедрение ES6 и рост числа прогрессивных веб-приложений. Кроме того, Yarn стал конкурентом npm, и усталость от JavaScript стала явью. В случае, если вы пропустили что-то из этого или просто хотите вспомнить прошлый год, мы предоставим вам покрытие. Крейг Баклер рассматривает эти события и многое другое в своем посте « JavaScript: 2016 в обзоре» . Это стоит прочитать.
С нетерпением жду 2017 года, мне интересно две вещи. Будет ли этот год сумасшедшим, как и прошлый? И где я должен сосредоточить свои учебные усилия в ближайшие 365 дней? Ответ на первый вопрос «почти наверняка», но ответ на второй несколько сложнее. Знание того, чему учиться, во многом зависит от вашей ситуации, например, вы ищете новую работу? Хотите стать более продуктивным в своем нынешнем? Или вы хотите проверить пару новых технологий, чтобы понять, как они складываются с теми, кого вы уже знаете?
Если вы в этой последней группе, мы вас там тоже прикрыли. Тим Севериен начал 2017 год, взглянув на три библиотеки, на которые стоит обратить внимание в наступающем году . Я бы посоветовал вам прочитать этот пост и сообщить Тиму, если вы согласны с его выбором (спойлер: один из них — Vue.js).
Что касается меня, я решил, что одной из моих целей на 2017 год будет сокращение использования jQuery. Это не потому, что я неожиданно запрыгнул на анти-jQuery. У меня нет Скорее потому, что jQuery был настолько потрясающим, когда он впервые появился на сцене, что сегодня я часто использую его, не задумываясь. Я не останавливаюсь и не думаю о том, что браузеры могут делать изначально.
И на самом деле, эта диета JQuery работает довольно хорошо. Например, недавно мне нужно было выбрать ближайший родительский элемент элемента, который был тегом привязки. В jQuery это не было бы проблемой, вы бы делали $el.closest("a")
Поэтому я нажал youmightnotneedjquery.com , ввел «самый близкий» в качестве поискового запроса и вернул ноль результатов. Хм … не идеально.
Я решил собрать свое собственное решение и придумал это:
while (el.parentNode.tagName !== 'A') {
el = el.parentNode;
}
Который работал, но был довольно уродлив. Затем я немного погуглил и обнаружил, что и Firefox, и Chrome изначально реализуют element.closest () . Это было все, что мне было нужно. Работа сделана!
Очевидно, что замена jQuery экспериментальными функциями браузера не всегда возможна. Если вы беспокоитесь о совместимости с более старыми браузерами, то использовать его не составит труда. И тратить минуты на поиск того, что заняло бы секунды в jQuery, не совсем продуктивно. Но даже сегодня веб-сайты загружают много килобайт JavaScript, чтобы делать то, что было частью стандартной DOM в течение многих лет. Включение этого изменения в мою работу заставит меня лучше узнать, на что способны современные браузеры — достойная цель на 2017 год.
Но как насчет тебя? Где вы будете концентрировать свои энергии в течение следующих 365 дней? Намереваетесь ли вы изучить новый фреймворк (если так, то какой)? Будете ли вы попробовать Node? Или, может быть, ваша цель — посетить встречу или внести свой вклад в открытый исходный код.
Что бы это ни было (или нет), я бы хотел услышать об этом в комментариях ниже.