@JSlang

Страница 2193 из 2237
Максим
09.10.2018
08:27:40
я не люблю вомбатов

Nikolay
09.10.2018
08:27:44
Нахуя вам неявный контекст, вот это всё? Это по-вашему удобно, поддерживаемо?

Nikolay
09.10.2018
08:32:43
Google
Sergey
09.10.2018
08:33:09
Каждый раз, когда вы заводите класс в жаваскрипте, — где-то в страшных муках умирает молодой вомбат.
этож удобно, хранить данные в класах, не? но правда фронтенд не приспособлен к ним, например реак, редакс, работают с простыми объектами, и тогда отпадает смысл держать данные в классах

Nikolay
09.10.2018
08:34:03
Чем это вдруг стало неудобно? const data = { /** данные */ };

Хоть какой-то толк от "классов" есть в случае, когда у тебя заранее известно, что будет ОЧЕНЬ много инстансов однотипного говна. И то за уши притянуто.

Nikolay
09.10.2018
08:36:47
Sergey
09.10.2018
08:37:06
Чем это вдруг стало неудобно? const data = { /** данные */ };
тем, что это просто какая-то структура, непонятно чего. а класс, как бы выделяет сущьность



Nikolay
09.10.2018
08:38:10
Не, не понятно. До тех пор, пока не прикручена хоть какая-нибудь типизация.

type User = { name: string, ... } const data: User = ...;

Sergey
09.10.2018
08:39:09
Не, не понятно. До тех пор, пока не прикручена хоть какая-нибудь типизация.
даже без типизации, можно зайти в класс, и сразу узнать какую структуру данных он из себя представляет

Nikolay
09.10.2018
08:39:36
В 2к18 уже почти что стыдно писать код без типизации.

Sergey
09.10.2018
08:39:54
с классами ты опрерируешь в проэкте сущьностями, а без, просто какими-то структурами

Google
Nikolay
09.10.2018
08:40:19
с классами ты опрерируешь в проэкте сущьностями, а без, просто какими-то структурами
Никто не мешает в инстанс класса напихать всякого, о чём нигде не сказано в сигнатуре.

Sergey
09.10.2018
08:40:40
а если структурка как-то динамически генерится, то вообще хуй просышь, с чем работаешь

но так-то да, с типами к структуркам можно написать алиасы, и будет нонрм

Nikolay
09.10.2018
08:41:25
А вот тестируемость очень страдает, когда у тебя данные и функции для работы с ними живут внутри этих же данных.

(я про методы)

Sergey
09.10.2018
08:42:17
ну с методами хз

Nikolay
09.10.2018
08:42:53
Есть модули и функции. Это необходимый и достаточный набор инструментов для нормальной организации кода в js.

Sergey
09.10.2018
08:42:53
мне тоже нравится больше держать ф-ции для работы с данными, отдельно от данных

Nikolay
09.10.2018
08:43:04
Функции проще тестировать, данные проще мокать.

Sergey
09.10.2018
08:44:29
мне тоже нравится больше держать ф-ции для работы с данными, отдельно от данных
но, бывают специфические ф-ции, которые предназначенны только для конкретных данных, тут может быть и имеет смысл заводить их как методы ?

Максим
09.10.2018
08:45:51
если не удобно с неявным контекстом

можно var className = new ClassName и внутри вместо this писать className

Максим
09.10.2018
08:46:42
тогда будет понятно что используется

Nikolay
09.10.2018
08:46:56
можно var className = new ClassName и внутри вместо this писать className
Я не пойму, классы это какая-то самоцель?

Максим
09.10.2018
08:47:06
ну не просто же так их добавили ? )

Nikolay
09.10.2018
08:49:15
let maxValue = Math.max.apply(null, interimArray); let indexMaxValue = interimArray.indexOf(maxValue); return { maxValue: maxValue, indexMaxValue: indexMaxValue }; -> const maxValue = Math.max(...tempItems); const maxValueIdx = tempItems.indexOf(maxValue); return { maxValue, maxValueIdx, };

ну не просто же так их добавили ? )
Зачем их добавили, это тема отдельная. Как по мне, лучше б не добавляли, меньше говнокода было бы.

Вот ответь на простой вопрос: какую задачу решает класс в твоем случае?

Google
Nikolay
09.10.2018
08:54:36
У него ведь наружу должен торчать один метод checkArrays, так? (название, кстати, тоже пиздец)

Никита
09.10.2018
08:55:39
в JS еще много чего добавят, потому что из языка это превращается в полноценную платформу

Nikolay
09.10.2018
08:58:09
И чем язык без классов неполноценен?

Viktor
09.10.2018
08:59:21
Спасибо, буду изучать!
learn.javascript - лучший учебник, имхо

Viktor
09.10.2018
09:01:56
?

Просто класс в JS для хранения данных - возможно* оверкилл

Я конечно весь контекст задачи не понимаю

Никита
09.10.2018
09:05:11
Платформа !== язык.
имеется ввиду расширение сферы применения

Viktor
09.10.2018
09:05:18
Но сам я их использую редко, если это не какой-то reactjs

Maksim
09.10.2018
09:05:46
имеется ввиду расширение сферы применения
js универсальный язык программирования, на нем изначально можно было написать все что можно вообще написать на языках программирования

Maksim
09.10.2018
09:06:33
именно

Никита
09.10.2018
09:08:50
я не о том что можно написать а что нет. проехали в общем.

Nikolay
09.10.2018
09:16:20
@krowka_enot ты чё замолк? я тут код твой разбираю :)

Максим
09.10.2018
09:16:32
звонили)

Nikolay
09.10.2018
09:17:02
Не отвлекайся! if (residue === 0) break; Ты брал первый вариант перевода из транслейта что-ли? :)

interim, residue — никто ж так не пишет.

Максим
09.10.2018
09:17:24
не первый ) там выбирал получше)

Google
Максим
09.10.2018
09:17:31
про temp забыл

а mod не стал использовать, как-то не особо понравилось upd вообще div и mod мне кажется в js не следует использовать, путаница только

Nikolay
09.10.2018
09:19:12
residue -> rest

interimArray.forEach(function(item, index) { interimArray[index] = interimArray[index] + intIncrement; }) Переписать на reduce

Кстати, венгерская нотация это, конечно, дело вкуса, но как по мне, — верный способ замусорить код. Поэтому убери везде постфикс Array у переменных, которые массивы.

Просто используй множетсвенное число, этого достаточно.

Максим
09.10.2018
09:24:53
зачем редьюс ставить? там же нет промежуточных данных

Admin
ERROR: S client not available

Nikolay
09.10.2018
09:26:07
Потому что forEach для другого.

Любые преобразования списков делаются в filter/map/reduce.

Максим
09.10.2018
09:27:09
хм

Nikolay
09.10.2018
09:28:25
Вообще, резюмируя: код, конечно, ужасен. Но задачу свою решает, что уже неплохо.

Nikolay
09.10.2018
09:34:57
https://github.com/potrata/reddit-parser Вот тестовое какое-то старое.

Но бля, щас без слёз уже не могу смотреть.

Максим
09.10.2018
09:35:18
Спс

Nikolay
09.10.2018
09:35:42
Заодно можешь посчитать количество классов в коде.

Еще есть всякое совсем упоротое дерьмо. Я тогда, помню, как раз начинал раскуривать ебучее фп. https://github.com/potrata/ptz-drivers-beward75/blob/master/src/util.js

Artyom
09.10.2018
10:11:16
Кто-нибудь объясните чем принципиально queueMicrotask превосходит promise.resolve?

Игорь
09.10.2018
10:12:58
всем привет, подскажите, как в popup при помощи jq, js загрузить другую страницу?

Google
Nikolay
09.10.2018
10:38:33
Первое — в теории, хз как там на тестах, наверное примерно одинаково.

Игорь
09.10.2018
10:40:57
аяксом))
я уже сделал, спасибо))

Никита
09.10.2018
10:41:07
=)

Taalaybek
09.10.2018
10:48:06
Kuku Guys Cannot read property 'dataset' of undefined This my code let th = document.querySelectorAll('th'); for (var j = 0; j <= th.length; j++) { console.log(th[j].dataset.id); } Where is error occured? Who can help me?

Google can't help me

Mangusta
09.10.2018
10:49:46
have you tried th[j].id ?

Taalaybek
09.10.2018
10:50:12
Ohh no I try to get value of attribute I have used getAttribute and dataset But nothing doesnt work

In Nodelist I see dataset

<th data-id="1">Mo</th>

7 ths

Roman
09.10.2018
10:56:23
7 ths
check the item to the existence of this attribute

th[j].dataset && th[j].dataset.id

Taalaybek
09.10.2018
10:57:29
All th have the attr I sure

Пидорас
09.10.2018
11:27:42
Привет. Кто-нибудь может ответить на несколько вопросов, касающихся асинхронности в JS и event loop в частности?

В первую о чередь меня интересует последовательно ли выполняются инструкции из очереди в цикле событий?

Страница 2193 из 2237