Телеграм канал 'JavaScript Teacher'

JavaScript Teacher


12'009 подписчиков
552 просмотров на пост

Канал для программистов JavaScript, где собраны все самые полезные фишки, облегчающие работу и обучение

По рекламе/ВП: @Norskjeg

Менеджер: @Norskjeg @optimus5125


Купить рекламу: https://telega.in/c/JavaScript_Teacher

Владелец: @Owner025

Детальная рекламная статистика будет доступна после прохождения простой процедуры регистрации


Что это дает?
  • Детальная аналитика 5'631'737 каналов
  • Доступ к 1'533'798'153 рекламных постов
  • Поиск по 4'944'226'174 постам
  • Отдача с каждой купленной рекламы
  • Графики динамики изменения показателей канала
  • Где и как размещался канал
  • Детальная статистика по подпискам и отпискам
Telemetr.me

Telemetr.me Подписаться

Аналитика телеграм-каналов - обновления инструмента, новости рынка.

Найдено 3412 постов

Какие приемы работы с асинхронным кодом в JS Вы знаете?

• Функции обратного вызова (Callbacks).
• Промисы (Promises).
• Async/await.
• Библиотеки вроде async.js, blueprint, q, co.

#собеседование | JavaScript_Teacher
👍 2
Изображение
Chrono

Chrono — это парсер даты на естественном языке в Javascript. Он предназначен для обработки большинства форматов даты/времени и извлечения информации из любого заданного текста. В данной статье автор демонстрирует внедрение русского языка в Chrono.

Читать

#статья | JavaScript_Teacher
❤‍🔥 1
❤ 1
🔥 1
🎉 1
Изображение
Несколько интересных лайфхаков

• Сравнение NaNс чем-либо (даже с NaN) всегда ложно, включая ==, .

• NaN (Not-a-Number) означает “не число”, но если вы запросите тип, NaNвернет число.

• Array.sort может выполнять функцию сравнения и вызывается драйвером, подобным быстрой сортировке (зависит от реализации).

• Некоторые версии JavaScript позволяют вам получать доступ к элементам $0, $1, $2 в регулярном выражении.

• null не похож ни на что другое. Это не объект, не логическое значение, не число, не строка и не undefined. Это немного похоже на “альтернативный” undefined. (Примечание: typeof null == "object")

#tips | JavaScript_Teacher
👍 1
❤ 1
🔥 1
👏 1
Изображение
В чем разница между оператором «in» и методом hasOwnProperty?

Отличие состоит в том, что оператор «in» проверяет наличие свойства не только в самом объекте, но и в его прототипах, а метод hasOwnProperty — только в объекте.

console.log('prop' in o) // true
console.log('toString' in o) // true

console.log(o.hasOwnProperty('prop')) // true
console.log(o.hasOwnProperty('toString')) // false

#собеседование | JavaScript_Teacher
👍 2
❤‍🔥 1
❤ 1
💯 1
Изображение
Map против Set

Set — это множество данных коллекции, которое должно состоять из уникальных значений. Map — это коллекция ключ/значение. Map и Set имеют схожие методы; к ним относятся .has(), .get(), .delete() и .size(). Данная статья рассказывает, когда нужно использовать Map и Set.

Читать

#статья | JavaScript_Teacher
👍 1
❤ 1
🔥 1
👏 1
Изображение
3, 2 … Остановимся здесь. 📌

Потому что 2 недель достаточно, чтобы познакомиться с основами Frontend и понять, подходит ли вам это направление!

Не обещаем, что будет легко, но интересно, полезно и недорого (всего 990 рублей!) – гарантируем.

Расклад такой: мы даем вам базу — больше 70 уроков, вебинары, лайвкодинг, а вы пишете собственную программу.

Если переживайте — не переживайте :) Рядом всегда будет наставник, готовый ответить на любой ваш вопрос.

⏰ Старт курса уже 2 апреля, присоединяйтесь!
❤ 2
👍 1
❤‍🔥 1
Изображение
"undefined" против "null"

"undefined" – присутствует у переменной, которая была объявлена, но значение для неё задано не было
"null" – обозначает пустое или несуществующее значение, которое явно присваивается переменной

"undefined" и "null" не равны при строгом сравнивании

Дополнительно почитать на тему разницы между этими двумя значениями можно >здесь

#tips |
JavaScript_Teacher
❤ 4
👍 1
❤‍🔥 1
🔥 1
👏 1
Изображение
Как в JS создать объект?

Объектный литерал:

const o = {
name: 'Mark',
greeting(){
return `Hi, I'm ${this.name}`
}
}

o.greeting // Hi, I'm Mark

Функция-конструктор:

function Person(name){
this.name = name
}

Person.prototype.greeting = function(){
return `Hi, I'm ${this.name}`
}

const mark = new Person('Mark')
mark.greeting() // Hi, I'm Mark

Метод Object.create:

const n = {
greeting(){
return `Hi, I'm ${this.name}`
}
}

const o = Object.create(n)
o.name = 'Mark'
console.log(o.greeting) // Hi, I'm Mark

#собеседование | JavaScript_Teacher
👍 4
❤ 2
❤‍🔥 1
💯 1
Изображение
Шаблонный метод

Делимся статьей, где автор рассказывает про паттерн проектирования “Шаблонный метод” в JavaScript. Подробно рассмотрен подход паттерна, приведен один сценарий, в котором необходимо использовать данный паттерн.

Читать

#статья | JavaScript_Teacher
👍 2
❤ 1
🔥 1
Изображение
isArray

Ещё один полезный метод, на этот раз позволяющий определить, являются ли входящие данные массивом

let emojis = ['', '️', '', ''];
console.log(Array.isArray(emojis));

let obj = {};
console.log(Array.isArray(obj));

#tips | JavaScript_Teacher
🔥 2
👍 1
❤ 1
👏 1
Изображение
Что такое AJAX?

AJAX или Asyncronous JavaScript and XML — это набор взаимосвязанных технологий, которые позволяют работать с данными в асинхронном режиме. Это означает, что мы можем отправлять данные на сервер и получать данные с него без перезагрузки веб-страницы.

AJAX использует следующие технологии:
HTML — структура веб-страницы.
CSS — стили веб-страницы.
JavaScript — поведение страницы и работа с DOM.
XMLHttpRequest API — отправка и получение данных с сервера.
PHP, Python, Nodejs — какой-нибудь серверный язык.

#собеседование | JavaScript_Teacher
👍 3
❤‍🔥 1
❤ 1
💯 1
Изображение
Callback-функции

Колбэк — это функция, которая должна быть выполнена после завершения выполнения другой функции. Такие функции необходимы, потому что многие действия JavaScript являются асинхронными. Это означает, что они на самом деле не останавливают выполнение программы (или функции) до тех пор, пока они не будут завершены. Данная статья поможет разобраться с колбэк-функциями.

Читать

#статья | JavaScript_Teacher
👍 2
❤ 1
🔥 1
👏 1
Изображение
Свойства объекта

Вы можете получить доступ к свойствам объекта, используя [] вместо ".". Это позволяет обнаруживать свойство, соответствующее переменной.

Кроме того, вы можете использовать это для получения/установки значения свойства, если его имя является неразрешенным идентификатором.

obj["class"] = "test"; // class - зарезервированное слово; obj.class не будет иметь силы.
obj["two words"] = "test2"; // использование оператора-точки невозможно с пробелом.

Некоторые разработчики этого не знают и используют eval(), что на самом деле не очень:

var propname = "a";
var a = eval("obj." + propname);

Это затрудняет чтение кода, усложняет поиск ошибок (вы не можете использовать JSLint), замедляя его выполнение, и может привести к XSS.

#tips | JavaScript_Teacher
👍 3
❤‍🔥 1
❤ 1
🔥 1
👏 1
Изображение
Что такое функциональное программирование и какие особенности JS позволяют говорить о нем как о функциональном языке программирования?

Функциональное программирование — это декларативная концепция программирования или образец (паттерн) того, как строятся приложения, как используются функции, содержащие выражения, которые вычисляют значения без изменения аргументов, которые им передаются.

Объект Array содержит методы map, filter и reduce, которые являются самыми известными функциями в мире функционального программирования из-за их полезности, а также потому, что они не изменяют массив, что делает эти функции «чистыми». Также в JS имеются замыкание и функции высшего порядка, которые являются характеристиками функционального языка программирования.

#собеседование | JavaScript_Teacher
👍 2
❤ 1
🔥 1
👏 1
Изображение
Асинхронность в браузере

Делимся статьей, в которой автор составил подробный гайд про асинхронность в браузере. Рассмотрены цикл событий, функции обратного вызова, async/await и другие темы. Благодаря данной статье у тебя сформируется полное понимание асинхронности в браузере.

Читать

#статья | JavaScript_Teacher
👍 2
❤‍🔥 1
❤ 1
💯 1
Изображение
Хранение по ссылке и по значению

Для хранения различных значений в переменных мы используем разные типы данных. Однако хранятся эти значения по-разному. Примитивные значения (например, числа или строки) хранятся в переменной как есть, а объекты, массивы и функции — по ссылке на место в памяти.

В чем же фундаментальное отличие?

Отличий несколько, некоторые могут приводить к неприятным последствиями в нашем коде.

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

Подробнее почитать можно тут.

#основы | JavaScript_Teacher
👍 2
❤ 1
🔥 1
🤩 1
Изображение
Короткие условные операторы в React

Можно вывести через JSX один результат, если условие истинно, и другой, если оно ложно, при этом записав код намного короче, чем через if-else.

Если результат нужно выводить только при истинности условия, можно использовать оператор &&.

#tips #React | JavaScript_Teacher
❤ 2
❤‍🔥 1
🔥 1
Изображение

#test | JavaScript_Teacher

🔥 2
👍 1
❤ 1
👏 1
Изображение
Значения параметров функции по умолчанию

В JavaScript параметры функции подобны локальным переменным. При вызове этой самой функции вы можете и не передавать значения для её параметров. В этом случае они принимают значение "undefined", что может привести к нежелательным последствиям.

Существует простой способ передачи значения по умолчанию для параметров функции при их определении. В примере для параметра "message" функции "greetings" передаётся значение по умолчанию "Hello".

#tips | JavaScript_Teacher
👍 2
❤ 1
🔥 1
👏 1
🎉 1
Изображение

Найдено 3412 постов