М.Двач / Программирование

Этого треда уже нет.
Это копия, сохраненная 21 марта 2018 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

JavaScript #94 20 янв, 21:09 1123037 В конец треда | Веб

9 Кб, 1052x1052676 Кб, 1024x576

Прошлый: >>1108498 (OP)

Этот тред посвящён уже нахуй никому не нужному языку прошлого - JavaScript, который через пару лет будет похоронен WebAssembly. Благодаря своей кажущейся дебилам простоте, веб-макаки затащили его уже и на сервера, и в мобильные приложения, и на десктопы, и ещё хуй знает куда, что привело к экспоненциальному росту количества написанного говнокода. Благо синтаксис позволяет легко писать на нём говнокод любой степени ущербности, а производительность позволяет писать на нём даже анимашки для лендингов и интернет-магазинов. Впрочем, для уменьшения потока говнокода от веб-макак каждый день выпускается по 100500 JS-фреймворков, благодаря чему веб-макаки теперь в основном тратят своё время на чтение доков по этим фреймворкам, а не на написание говнокода.
JavaScript по праву является самым популярным в мире языком: ведь дебилов среди людей - абсолютное большинство. На каждом сайте пока ещё есть браузерный JavaScript, а от JavaScript на сервере все постепенно отказываются.

Часто задаваемые вопросы:
https://github.com/vladimir37/js-thread/blob/master/Wiki/faq.md

Список материалов для изучения:
https://github.com/vladimir37/js-thread/blob/master/Wiki/learn.md

Список инструментов и направления JS-разработки:
https://github.com/vladimir37/js-thread/blob/master/Wiki/tools.md

Инструмент для визуализации и экспериментов со связями между объектами в JavaScript:
http://www.objectplayground.com/

Конфа /pr/ в Slack:
https://slack-2chpr.herokuapp.com/

JS-конфа в телеграме:
https://telegram.me/jsthread

НЕ КОПИРУЙТЕ КОД ПРЯМО В ТРЕД!
Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.

Ответы2531027083272162814929478

20 янв, 21:12 2 1123043

Вложил в этот перекат весь свой опыт перекатов. На правах ОПа задам ебанутый вопрос.

>строка 5289 - вывод на экран массива
console.log(object.airports.departure);
>строка5290 - Cannot read property 'airports' of undefined
for(let i = 0; i < (object.airports.departure).length; i++)

КАК. ЭТО. ВОЗМОЖНО.

Ответы230632312323143

20 янв, 21:48 3 1123063

>>1123043
Вопрос снимается. Я невнимательный ебач.

Ответы23064

20 янв, 21:49 4 1123064

>>1123063
/thread

21 янв, 00:08 5 1123123

>>1123043
Надеюсь такая беспомощная херня как ты не разрабатывает интерфейс в аэропортах на которых я буду летать. Ну что за пиздец!

21 янв, 01:26 6 1123143

>>1123043
И какова разгадка?

29 Кб, 250x346
21 янв, 02:40 7 1123151

Что скажете по поводу пикрил JavaScript. Карманный справочник. Дэвид Флэнаган? Годнота ли для связки с Кантором? В том смысле, как книга, которую можно читать в транспорте, заучивать теорию без воды и всякое-всякое. Собираюсь приобрести, как вкатывальщик. Кантор даёт хорошие знания, но достаточно ли этого? Закрепляю знания теорией с ютуба Sorax и практикой по написанию дичи var huy = 5; alert("huy");. Ещё даже основы JS Кантора не прошёл, поэтому и спрашиваю у вас. Есть ли смысл брать данную книжечку, почитать когда еду с учёбы, на парах философии, на толчке и так далее. О "Подробном руководстве" так же прошу высказаться, если есть возможность. Информация устарела возможно, никто не поспорит с этим, но там ведь излагается тот фундамент, без которого вообще никуда? Глянул электронный вариант книги, вроде всё просто и легко излагается, без лишнего, с таблицами и теорией. Охватывают даже связь JS с HTML и CSS, а весь синтаксис описывается из спецификации ECMAScript 5. То есть чтобы действительно закрепить пройденное. Ещё небольшая, как для книг по программированию, цена. Дискасс на эту тему. С меня как всегда нихуя и два чая.

Ответы23162

21 янв, 06:40 8 1123162

>>1123151
Бесполезная покупка. Это справочник. Его не надо читать, к нему надо обращаться с конкретным вопросом. Искать что-то в устаревшей книге не лучшая идея, если ты не в горном ауле. Обращаться ты всё равно будешь в Гугл.
Читай пока Кунотора, лучше английскую актуальную версию. Открой для себя
https://developer.mozilla.org/en-US/
https://stackoverflow.com/
То есть, прочитал что-то у Кантора, и тут же поискал это на этих ресурсах дополнительно, воспроизвёл примеры, побился об подводные камни.

А читать промеж делом это бестолково. У тебя только иллюзия осведомлённости будет, на следующий день ничего не вспомнишь. Подпишись тогда на агрегатор типа
http://javascriptweekly.com/
и читай всё подряд. Хотя бы хайповые базворды знать будешь.

Ответы23226

7,9 Мб, 1920x1080
21 янв, 10:39 9 1123192

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

Ответы23215

52 Кб, 745x454
21 янв, 12:20 10 1123215

>>1123192
Есть хороший алгоритм для таких вещей, нужно отсортировать массив. Установить два указателя на начало и конец и в зависимости от суммы элементов смещать их. Вот пикрелейтед я тебе накидал, это работает быстрее чем твое O(n^2) решение. Единственное по условию твоей задачи нужно только первое совпадение вывести. Причем самое левое в оригинальном массиве. Если значения уникальные, то можно после нахождения возможных значений воспользоваться indexOf и взять наименьшие индексы. Если элементы могут повторятся - я хуй знает как эту задачу решать.

Ответы23218

21 янв, 12:32 11 1123218

>>1123215
У этого вроде ассимптотическая O(2 * n);

21 янв, 13:04 12 1123226

>>1123162
Спасибо. Примерно это и хотел узнать, есть ли смысл. Пока продолжу читать Кантора и брать ещё информацию из предоставленных тобой сайтов.

21 янв, 13:07 13 1123227

https://vimeo.com/111122950

21 янв, 13:17 14 1123230

Захотелось написать маленькое приложение под винду для себя, которое бы взаимодействовало с файловой системой (только чтение), electronjs для этих целей норм, или есть что-то получше?

Ответы232322324123369

21 янв, 13:32 15 1123232

>>1123230
> electronjs
Очень удобно, под себя.

21 янв, 13:48 16 1123241

>>1123230
Я бы выбрал лучше jscript или jscript.net, и по хуй, что технология древняя. Мало жрет ресурсов, работает на всем парке начиная с ХР.

21 янв, 14:13 17 1123250

Возможно ли применение TDD в верстке под вордпресс или нет?

Ответы23274

21 янв, 15:06 18 1123274

>>1123250
Тебя в гугле забанили? google://tdd wordpress

Ответы23314

59 Кб, 734x663
21 янв, 15:30 19 1123299

почему в js такое уебищное ооп, пытаюсь разобраться со всем этим говном и просто пиздец

__proto__, prototype, constructor - как понять эту ебанутую хуйню?

Ответы2330723371233722338124090

21 янв, 15:38 20 1123307

>>1123299
Никак, привыкай-страдай

21 янв, 15:42 21 1123312

Сап, сеньёры. Дело такое, осваиваю бекенд, написал микросервис для одной хуйни, и хочу чтобы анон, оценил и обосрал если что не так. Код https://github.com/artixx/radar

Сам микросервис занят тем, что по запросу берёт json от двача, переводит в единый формат и возвращает. Знаю, что одной из проблем будет скорость работы, так как при каждом запросе он заново запрашивает и мапит треды, надо сделать ещё что-то вроде кеша по запросу. Ещё конфигурация всрато получилась, но пока хз как её удобнее делать, поизучаю как нибудь эту тему.

Примеры запросов
https://pure-wave-92397.herokuapp.com/b/threads
https://pure-wave-92397.herokuapp.com/pr/threads/1123037
https://pure-wave-92397.herokuapp.com/pr/threads-light

Интересует мнение экспертов, чё не так, что можно улучшить и оптимизровать.

Ответы2814428422

21 янв, 15:42 22 1123314

>>1123274
я сказал верстку под вордпресс, а не плагины с phpunit под вордпресс.

Ответы23354

21 янв, 16:16 23 1123354

>>1123314
Козлик ёбаный, ты разницу между вёрсткой и разработкой знаешь? TDD — test driven development, никак с версткой не связан.

Ответы2335923360

21 янв, 16:18 24 1123359

>>1123354
фронтенд - это и есть разработка!!!

Ответы2336123363

21 янв, 16:18 25 1123360

>>1123354
Я чет тоже охуел, думаю ребята уже разметку тестируют. WAT

21 янв, 16:18 26 1123361

>>1123359
Если модульная сборка, импортируешь модуль в файл с тестами и там тестируешь.

21 янв, 16:19 27 1123363

>>1123359
А, понятно, спешите видеть, у нас тут хтмл5 разработчик, со знанием цсс.

21 янв, 16:21 28 1123369

>>1123230
Нет, не норм.
Все равно, что из пушки по воробьям.
Electron или NW для больших приложений. Это блядь целый браузер.
Для маленьких приложений можно написать расширение для браузера, chrome app, или сервис на той же ноде или go, который будет отрисовывать ui в уже установленном браузере. Нахуя вы для мелких утилит используете то, что для них не предназначено.

21 янв, 16:23 29 1123371

>>1123299
Если тебе что-то не понятно - это не значит, что это что-то уебищно.

21 янв, 16:24 30 1123372

>>1123299
Достаточно понять как выглядит объектная система. Представить граф объектов. Нарисуй.

21 янв, 16:32 31 1123381

>>1123299
С болью и трудом.

Лучшее обьяснение тут
https://learn.javascript.ru/oop
https://learn.javascript.ru/prototypes
https://learn.javascript.ru/es-object
https://learn.javascript.ru/es-class

Берёшь и учишь последовательно и внимательно. Причём держи наготове ноду или браузер, где ты будешь тестировать и экспериментировать.

21 янв, 17:12 32 1123427

Привет скриптач, хочу _все_ функции писать каррированными:
[code]
const (a) => (b) => a + b
[/code]
Вместо:
[code]
const (a, b) => a + b
[/code]

Какие подводные камни? Заметил, что во многих воннаби функциональных JS-проектах функции не всегда пишутся каррированными, почему?

Ответы23433234462374134331

21 янв, 17:15 33 1123433

>>1123427
Сам как думаешь?
Не видишь что расход памяти пропорционально растет? На каждую функцию помимо самой функции создается лексическая область видимость.
В твоих примерах вместо одного объекта функции и одной lexical scope у тебя четыре объекта в памяти.

21 янв, 17:23 34 1123446

>>1123427
>const (a, b) => a + b
это быстрее

33 Кб, 842x158
21 янв, 17:37 35 1123470

Очень жаль. Но как же тогда мне стать функциональным господином в JS?

Ответы23494

21 янв, 17:54 36 1123494

>>1123470
Бери и становись. Жоэс вообще, и ФП стиль в жс не для числодробилок.

Ответы23496

21 янв, 17:55 37 1123496

>>1123494
Нечислодробилки с его подходом будут еще медленнее.

21 янв, 18:54 38 1123596

Вебач, как там в 2018 на канвасе надо рисовать? В 3d-движках все ясно, ты сначала очищаешь экран, потом все рисуешь и кладешь отрисованный кадр в буфер. Когда же я пытаюсь следовать той же логике на канвасе, то у меня только рисуются прямоугольники. К примеру, вт такой говнокод в цикле мне почему-то постепенно закрашивает весь экран, хотя должен отрисовать постепенно спускающийся прямоугольник.
[CODE]
gf.clearRect(0, 0, canvas.width, canvas.height);
gf.rect(0, iterator, canvas.width, 20);
gf.fillStyle = getRandomColor();
gf.clearRect(0, 0, canvas.width, canvas.height);

gf.fill();
iterator += 20;
if (iterator > document.body.clientHeight) iterator = 0;
[/CODE]

Ответы23601

21 янв, 19:00 39 1123601

>>1123596
А движки по твоему не на канвасе рисуют что ли.
Без них ты должен делать тоже самое, что с ними.
Рисовать, очищать, рисовать.

Ответы23606

21 янв, 19:02 40 1123606

>>1123601
Так ведь у меня очистка не работает, а отрисовка работает

Ответы23612

21 янв, 19:13 41 1123612

>>1123606
https://www.html5canvastutorials.com/advanced/html5-canvas-animation-stage/

Ответы23644

21 янв, 20:12 42 1123644

>>1123612
Все оказалось просто, ебучий костыльный жс забывает добавлять в память отрисованные прямоугольники без context.beginPath();

Ответы23661

21 янв, 20:33 43 1123661

>>1123644
> жс забывает
Ахуенно ты оправдываешь собственную тупость.

Ответы23698

21 янв, 20:40 44 1123668

Какой есть устоявшийся паттерн для такого?

var data = {};

function getValue() {
return asyncFunc().then(res => {
// do smth
data = res;
return res;
});
}

function exportValue() {
// должна возвращать или уже resolved data, либо промис getValue
}

func1() {
exportValue().then(res => {})
}

func2() {
exportValue().then(res => {})
}

// exportValue должна вызываться только один раз

21 янв, 21:20 45 1123698

>>1123661
По документации clearRect чистит канвас вне зависимости от того, что там кем отрисовано, а на деле без beginPath ничего не происходит

Ответы23711

79 Кб, 890x814
21 янв, 21:29 46 1123711

>>1123698
Кому ты пиздишь

21 янв, 22:03 47 1123741

>>1123427
С другой стороны и forEach гораздо медленнее:
for x 3,802,459 ops/sec ±2.42% (79 runs sampled)
forEach x 2,335,434 ops/sec ±1.14% (84 runs sampled)

Что ж теперь, и от него отказаться? А ведь я еще кучу другого сахарка не бенчил. Если так дальше размышлять, то язык в Ассемблер превратится.

Пытался писать в функциональном стиле и радовался как ребенок - красиво так получается, лаконично, и понятно.

И тут такое говно. Думал, V8 все это как-то оптимизирует волшебным образом, но нет.

Потом начал читать рандом срачи в интернетах и обнаружил, что многие люди бугуртят с каррирования, типа (a, b) - заебись, а (a)(b) уже сложна-сложна нипанятна.

И теперь я дальше думаю - научусь в FP стиле писать, найду работу, а там начальник заставит вилкой императивно писать, потому что местным кодерам непривычно.

Перекатываться куда-то еще нет ни времени, ни квалификации.

forEach еще ладно, всего в два раза медленнее (хотя это тоже дохуя), но каррированная функция всего из 4 аргументов становится уже в 25 раз медленнее и в 250, если каррировать Рамдой. Просто пиздец.

Ответы2375423764

21 янв, 22:17 48 1123754

>>1123741
Потому что во всем должен быть баланс.
Когда отголоски фп не повсеместно, а местами, это еще не так страшно для производительности. Когда у тебя весь проект будет функция через функцию, вот тут ахуеешь. Но дело каждого.
Кто-то так же фанатично и ООП использует только потому что.

21 янв, 22:25 49 1123764

>>1123741
В чем твоя проблема. Хочешь писать чисто на ФП, бери ФП языки транслирующиеся в JS. Их уже есть и много.

Ответы23780

131 Кб, 2026x1050
21 янв, 22:33 50 1123780

>>1123764
Пикрелейтед. Даже если брать мелкие проекты и в одно ебало их писать, заказчик в 95% случаев пошлет тебя нахуй с твоими ФП языками, потому что зависеть от одного-единственного функционального господина бизнесу (тем более мелкому) не кайф.

Ответы23785

21 янв, 22:38 51 1123785

>>1123780
Тебя точно так же могут послать с твоим фундаментальным ФП подходом.

21 янв, 22:43 52 1123799

Вкатываюсь во фронтендщика. Учу пока верстку на htmlacademy и немного охуеваю. Такое чувство, что проходить тему "Рамки и фоны", где меня учат ставить на бекграунд картинки или создавать стрелки и треугольники, просто трата времени. Но и скипнуть не могу, боюсь что потом аукнется когда буду тяжелый макет верстать. Что можно скипнуть чтобы до сентября уже в стажера хотя бы вкатиться со знанием жс и реакта.

Ответы2380423839

21 янв, 22:48 53 1123804

>>1123799
Бери макеты и верстай. Походу дела гугли, читай документацию, чтобы сверстать то или иное.

Ответы23805

21 янв, 22:49 54 1123805

>>1123804
Так это получается методом тыка, разве такое нормально? Не надо сначала матчасть поучить, а потом браться хотя бы с минимальным базисом?

Ответы2380623812

21 янв, 22:51 55 1123806

>>1123805
Матчасть чего. Верстки? Вся матчасть укладывается в то как пишутся теги, и css правила. Дальше читаешь по каждому отдельно, и методом тыка лучше всего.

Тебя никто не научит правильно делать треугольники, потому что нет такого понятия как правильно. Все можно реализовать сотней способов. Какой из них рациональнее ты должен понять - а не выучить.

21 янв, 22:54 56 1123812

>>1123805
Кто тебе мешает совмещать свои курсы с методом тыка. Вот и разбавишь свою скуку, чередуя. А потом сделаешь вывод, что принесло больше профита.

21 янв, 23:18 57 1123839

>>1123799
> учу верстку.
> вкатится со знанием жс и реакта.
Вообще никак не связанные темы. По делу - проходи ВЕСЬ Html Academy, там реально полезные интерактивные курсы. Но проходи не просто так, делай записи в тетрадку, верстай свои макеты. Не зацикливайся на этом. HTML/СSS на базовом уровне не сложный и кладется в голову за 2 недели. А вообще странный вопрос, если ты вообще нулевый придешь. Такой "я знаю реакт", а на бекграунд не сможешь картинку поставить, о чем с тобой говорить?

21 янв, 23:19 58 1123841

Какое же говно этот ваш язык, надо было сказать нет, когда мне предложили взяться за такой проект. Как жавист, скоро буду кровью плеваться от количества разных стандартов и отсутствия нормальных ide с автокомплитом. Да, есть убогий vs code, который обертка от ноды и хрома.

Ответы2384824083

21 янв, 23:22 59 1123848

>>1123841
JS самый годный язык. А ты просто рвешься от собственной тупости.

Ответы23857

21 янв, 23:24 60 1123857

>>1123848
Говно для идиотов, которые не осилили типизацию, вроде тебя.

Ответы23884238852389723944

21 янв, 23:32 61 1123884

>>1123857
Пруфай, что я ее не осилил, дегенрата ты кусок.

21 янв, 23:33 62 1123885

>>1123857
Какая ирония судьбы! Осилил типизацию жаву, а писать приходится на js говне.

21 янв, 23:38 63 1123897

>>1123857
>не осилили типизацию.
Осилили это наркоманское прототипное OOP, с лексическим окружением/скоупами цепочками. Слава аллаху в ES6 появилась обертка вокруг всей этой еботы. Но зато не осилили, что перед запуском функции просто декларируется тип аргумента. Ага, конечно. СЛИШКОМ СЛОЖНО.

22 янв, 00:10 64 1123944

>>1123857
А как из того, что ты не осилил динамику вытекает то, что кто-то не осилил статику? Ты уверен, что выбрал правильную профессию с такой логикой?

Ответы24149

29 Кб, 717x703
22 янв, 00:59 65 1123987

двачик объясни, почему тупскрипт не ругается на пик, по идее x должна вернуть массив объектов Options, а я вот возвращаю пустой массив и ему похуй

Ответы239912402026141

22 янв, 01:03 66 1123991

>>1123987
ну то есть я в теории понимаю что чекер не может определить будет ли у меня пустой или полный массив в рантайме, но тут очевидно же что пустой. Чего я недопонимаю

22 янв, 01:36 67 1124020

>>1123987
Это что за язык программирования вообще? Этож не ЖС?

Ответы24024

22 янв, 01:40 68 1124024

>>1124020
это TS

22 янв, 05:34 69 1124083

>>1123841
если бы не статическая типизация, я так бы и не узнал, зачем мне ide вместо редактора

22 янв, 06:55 70 1124090

>>1123299
А ещё почитай как-нибудь You don't know JS. Там во всех подробностях описано, что из себя JS представляет.
Вкратце, жабаскрипт вообще не ООП в классическом понимании, его только пытаются сделать подобием такового кучка ниосиляторов, не желающих разбираться в прототипах, своеобразной работе this и прочем.

22 янв, 07:06 71 1124092

Я бы рекомендовал сначала попробовать Lua. Там тоже прототипы, но намного проще всё. Потом брать жс как следующую ступень, где сложнее работа с this, свойствами объектов и безальтернативная реализация прототипов.

22 янв, 09:48 72 1124124

Господа, есть ли что-то на горизонте из функциональщины, что могло бы компилиться в васм?

22 янв, 11:10 73 1124149

>>1123944
Двачую. Динамика по факту сложнее статики. В статике с тобой и компилятор нянчится, и в целом код легче для понимания - особенно если брать современные немногословные языки вроде Котлина и Свифта.

22 янв, 11:30 74 1124161

Как же я люблю JS

22 янв, 14:56 75 1124319

у меня вытекают глаза, читая нововведения в ES6.
js итак был не особо логичным и удобным языком, но его превращают в убер монстра

var f = function() {
return ['this', 'is', 'array'];
};

var [ first, second, third ] = f();

Ответы243292433224340

22 янв, 15:04 76 1124329

>>1124319
И что тут нелогичного, дебс? Это есть не только в js.

И да, проснись, на дворе ES8

22 янв, 15:07 77 1124332

>>1124319
>ES6.
>var

sage 22 янв, 15:15 78 1124340

>>1124319
const {
mamku,
tvoy,
ebal,
} = pidor

22 янв, 16:29 79 1124376

Как правильно делать импорты?

import {MyClass} from '../MyClass'
или
const MyClass = require('../MyClass')

Ответы24379

22 янв, 16:32 80 1124379

>>1124376
<srcipt src="myclass.js"></script>

Ответы24380

22 янв, 16:33 81 1124380

>>1124379
Имелось ввиду в nodejs.

Ответы24384

22 янв, 16:38 82 1124384

>>1124380
ну import конечно, что за идиотские вопросы.
это стандарт. и все окружения идут к реализации загрузчиков под этот синтаксис. когда в WebAPI запилят Module Loader, можно будет и в браузере использовать import

Ответы24437

22 янв, 17:30 83 1124414

Нужна небольшая помощь со скриптом (расширение для хрома).
Может кто помочь?

Ответы24423

22 янв, 17:41 84 1124423

>>1124414
все могут, но насколько небольшая? Ты можешь не мять сиськи и обрисовать че те надо?

Ответы2442724442

22 янв, 17:45 85 1124427

>>1124423
Да там делов на полчаса, я бы сам сделал, но занят. Есть нативная программа на C++ для работы с 3D, надо перенести ее функционал в веб, ввиде расширения (ну это шоб, лучше интегрироваться ос, ну ты понимаешь же, да)

sage 22 янв, 18:06 86 1124437

>>1124384
Там с этим серьёзные проблемы, такчто в ближайшие годы не будет на ноде импорта. Если вообще будет. Прогонять каждый раз код через бабель на ноде - зашквар.

Ответы2444424461

22 янв, 18:15 87 1124442

>>1124423
Поправить небольшой уже готовый скрипт
Если у тебя есть телега, отпиши плс, там все обговорим

Выше про кресты писал не я

Ответы24448

22 янв, 18:20 88 1124444

>>1124437
Они там уже есть.

Ответы24461

95 Кб, 1432x254
22 янв, 18:24 89 1124448

>>1124442
@anonuserLE

22 янв, 18:39 90 1124461

>>1124437
>Прогонять каждый раз код через бабель на ноде

У тебя наверное LTS, и у меня. А у этого анона >>1124444 9-ая уже.

Ответы24464

22 янв, 18:43 91 1124464

>>1124461
На 9-ке также

import Letter from '../entity/Letter'
^^^^^^

SyntaxError: Unexpected token import

Ответы24469

22 янв, 18:50 92 1124469

>>1124464
https://nodejs.org/api/esm.html
Нет, не так же.

Ответы24501

117 Кб, 1024x645
22 янв, 19:35 93 1124501

>>1124469
Ну тогда хуй его знает, нода 9.4.0

Ответы2450624545

22 янв, 19:39 94 1124506

>>1124501
написано же, что под флагом. как когда-то es6 harmony фичи были.

Ответы24585

22 янв, 20:24 95 1124545

>>1124501
Бабель!

Ответы24585

22 янв, 21:38 96 1124585

>>1124545
>>1124506

Ну это постоянно таскаться с костылями, проще подождать, не критично пока что.

Ответы24658

23 янв, 00:14 97 1124658

>>1124585
С какими еще костылями. Параметр командной строки костыли? Ты с ума сошёл?

28 Кб, 502x479
24 янв, 02:55 98 1125310

>>1123037 (OP)
Что это за рекурсия такая? На что ссылаются эти алерты?

Ответы2531125325

24 янв, 03:05 99 1125311

>>1125310
apply* имел ввиду.

24 янв, 04:42 100 1125324

сап, жсач. планирую убить соседку и выебать ее труп. потом надо будет запилить сервак с пастой. как это лучше всего сделать?

Ответы25366

24 янв, 04:46 101 1125325

>>1125310
> x = {}, x.x = x
в чем проблема?

Ответы25327

24 янв, 04:50 102 1125327

>>1125325
Я ньюфаг, бро, я не понимаю

Ответы25331

24 янв, 04:59 103 1125331

>>1125327
Циклическая ссылка.

Ответы25486

24 янв, 08:18 104 1125366

>>1125324
>выебать ее труп
Тебе в ПХП-тред.

Ответы25448

99 Кб, 650x650
24 янв, 09:18 105 1125378

e 24 янв, 13:50 106 1125446

tesad

24 янв, 13:50 107 1125448

>>1125366
Тот ебанутый джавистом был, говорят.

24 янв, 14:47 108 1125486

>>1125331
Циркулярка.

24 янв, 17:48 109 1125564

Есть класс MyClass и в нем два async метода

MyClass {

async method1() {return this;}

async method2() {return some_string}

}

Можно их как-нибудь запустить в одну строчку? я хочу что-то такого:
let action = await new MyClass().method1().method(2);

А сейчас делаю так:
let action = await new MyClass();
await action.method(2);

Ответы2556925840

24 янв, 17:59 110 1125569

>>1125564
>А сейчас делаю так:
>let action = await new MyClass();
>await action.method(2);

Здесь занаркоманил в спешке:

let myClass = new MyClass();
await myClass.method1();
let myString = myClass.method2();

43 Кб, 640x480
24 янв, 19:28 111 1125609

Наговнокодил тут приложуху на реакте с кучей сетстейтов и теперь оно мне выдает около 15 рендеров при первом появлении. Так-то ничего не тормозит, но всеж это норма или нет?

Ответы25614

24 янв, 19:46 112 1125614

>>1125609
Не норма. Что у тебя там происходит, блядь?
Все асинхронные данные до загрузки компонента должны получаться в component will mount методе. Это не вызовет перерендер всего приложения 100500 раз. Какие нужно стейты на старте устанавливаются в констркуторе класса. Каждый компонент должен отрендерится один раз. А не тормозит - потому что реакт сверяет реальное DOM дерево с твоим и заменяет только отличающиеся элементы. Если рендер была вызвана и нихуя не поменялось в доме, то нихуя и не произойдет.

Ответы25648

24 янв, 20:01 113 1125620

Сап программач
Сегодня я вкатился в программирование, а именно в JS
Зашел на кодварс, чтобы порешать задачки
Вот мой код (условие задачи по той же ссылке в комментарии сверху) :
jsfiddle.net/orphgutL/1
Как вам? Довольно элегантно, да?

Ответы2566125690

24 янв, 20:37 114 1125648

>>1125614
Ну вопщем, я загружаю данные с сервера, но вставляю их в приложение не прямым путем, а через метод добавления (ну тип каждый раз прожимается кнопочка "добавить"), который при каждом выполнении вызывает setstate

24 янв, 20:39 115 1125652

сап аноны. я ньюфаг и хочу вкатиться в js. в общем есть БД на Firebird, можно ли сделать веб страничку на js чтобы работать с ней? Мож там фреймворки какие? Что читать, куда смотреть? спасибо

24 янв, 20:48 116 1125661

>>1125620
Обновленная ссылка с условием
http://jsfiddle.net/orphgutL/3

Ответы25690

24 янв, 21:58 117 1125690

35 Кб, 581x388313 Кб, 652x669

>>1125661
>>1125620
Знатно ты упоролся
https://jsfiddle.net/ykyv42h4/

Ответы25703

24 янв, 22:21 118 1125703

>>1125690
Ну оно хотя бы работает, я только начал изучать кантора
Можно вообще сделать без циклов, просто 10 миллионов if, почему бы и нет

Ответы25707

24 янв, 22:27 119 1125707

>>1125703
Я тебя не корю. Похвально, что ты интересуешься подобными вещами. Может вырастешь во что-то большее чем формошлеп же. Keep it up.

Ответы25724

24 янв, 22:50 120 1125724

>>1125707
> Может вырастешь во что-то большее чем формошлеп
Эти маняфантазии. Назови 5 крупных проектов, где джиси используется не для обработки форм. Без всяких там юнити-хуюнити. Вот прям игры, приложения, ну ты понел. И что бы в зависимостях не было браузера, как в электроне.

скрипт кидди, будьте реалистами, джиси умирает, цсс3 и хтмл 5 уже умеют многое из того ради чего ваша недоджава разработалась за 2 недели.

Ответы25742

24 янв, 23:09 121 1125739

Это я такой тупой, или нужно выбрать другой подход к обучению? Два дня назад читал про циклы из Кантора, задачки так и не вышли у меня. Сегодня прочитал ещё раз, тему понял, но половину задачек я сделал неправильно/не сделал вообще. А это ведь только основы, а я уже зарываюсь на самое дно и не могу решать задачки. Практиковаться дальше или попробовать что-то ещё? Советы, что это не моё сразу идут нахуй, так как всё равно буду пробовать. Подкиньте советов годных, перечитывать теорию по 10 раз уже надоело, всё запоминаю, а решить задачу всё равно трудно. Ноотропы и другие вещества тоже не предлагать. Есть ещё книга "Выразительный JavaScript". Может в один котёл к Кантору закинуть и читать? Но боюсь теория опять-таки не поможет, нужна практика, полагаю. А на кодварсе для такого уровня нет задач. Есть ещё вариант делать максимум, а то что не получилось — пропускать. Помогите, а то мотивация совсем пропадает.

Ответы257402574826203

24 янв, 23:10 122 1125740

>>1125739
это не твое

24 янв, 23:12 123 1125742

>>1125724
Самый пиздатый редактор VSCode написан на JS целиком и полностью. Ну и нужно понимать, что JS создавался для решения задач в вебе. Прямо сейчас ты двачуешь благодаря этому языку. XHR тоже CSS за тебя отправлять будет? Вангую JSу еще как минимум лет 7 жизни. Единственное, что ему "угрожает" это Webassembly, и то я сомневаюсь, что для обработки формочек и разработки интерфейсов плюсовики будут писать код. Скорее WASM будет только там где бутылочное горло в приложении.

Ответы258482847736216

106 Кб, 700x862
24 янв, 23:21 124 1125747

Анон, я 2 день уже ебусь с вебпаком и надеюсь толко на тебя.
Предыстория: пишу апп на реакте (webpack 3+), аноны посоветовали поставить hot loader. Два дня ебусь с вебпаком, пробовал и 2 версию, и вебпак серверы и прочее говно, но нихуя не получается - или вообще нахуй не собирается или реакт компоненты не апдейтит.
В итоге сделал через create react app и eject, вроде работает, но теперь другая проблема
в jsx есть
<img src={require('assets/img/blueprint.png')} alt=""/>
выкидывает (windows, да)
You attempted to import F:\Projects\owl-eye-main\config\src\app\assets/img/blueprint.png
я уже заебался и не понимаю, какого черта у меня теперь слеши в обратную сторону стоят. Впрочих require такого нет (в тонкостях импортов в js и прочего особо не разбираюсь - в основном пишу на django)
Я понимаю, что скорее всего где-то сделал глупую ошибку, но где?

Ответы257492575025783

2 Кб, 72x72
24 янв, 23:21 125 1125748

>>1125739
Ты странный, тебе язык для каких задач вообще? Чтобы был или что? Я поражаюсь таким людям. Используй его для того, что тебе нужно сделать. Уметь в алгоритмы это - суперкруто, но нужно понимать, что крутить на хую красно-черные деревья, сортировать списки и считать числа бернулли и ряды по формуле Фаулхабера лучше в других языках. Косолапый байтослесарь, напишет говнокод и это будет работать в 10 раз быстрее твоего. Прямо сейчас открывай learn.javascript.ru в одной вкладке, твой проект в другой и делай.

Ответы26203

24 янв, 23:29 126 1125749

>>1125747
на винде сидишь?

Ответы25759

24 янв, 23:32 127 1125750

>>1125747
Мне твоим пиком жопу порвало. В фронтэнде ад и погибель, а в бекэнде мне всегда удобно, приятно и комфортно.
Мне бы работать с автором пика, чтоб он своё говно с обработкой кнопочек и расположением квадратиков пилил, а я сервера.

Ответы2576025795

24 янв, 23:43 128 1125759

>>1125749
ах да не заметил, но кроме слешей путь правильный?
то что у тебя в /config/src/ лежит?

24 янв, 23:45 129 1125760

>>1125750
ну так воспринимай тогда как
верх - взгляд фронтендера на бэкенд
низ - взгляд бэкендера на то, что творится в мире фронтенда (вот я примерно так все эти вебпаки, ноды сейчас и вижу)

25 янв, 01:00 130 1125783

>>1125747
>2 день уже ебусь с вебпаком
Этож мало. Продолжай, через неделю недели глядишь начнёшь что-то понимать.

36 Кб, 550x412
25 янв, 01:07 131 1125787

>от JavaScript на сервере все постепенно отказываются
Поясните за серверный жс, что там и как сейчас.

Ответы25799

25 янв, 01:31 132 1125795

>>1125750
Сто хуев там. Необходимость изучить сборщик и менеджер зависимостей и один или несколько довольно несложных фрейморков, делающией жизнь простой и приятной, вместо jquery дрисни и говнолапши, помноженной на браузеропроблемы не является чем-то космическим или рокетсаенсным. Скорее наоборот.

Хотя, если учесть среднего JS-разработчика, то тогда да -вышеописанное близко к сакральным знаниям и запредельной сложности.

25 янв, 01:32 133 1125799

>>1125787
Автор ноды сказал, что его поделие хуита и душа живет в паскале для даунов Го.

Ответы25946

25 янв, 06:11 134 1125840

>>1125564
Скобками оберни да и всё.
>let string = (await myClass.asyncMethod()).syncMethod()

25 янв, 07:29 135 1125848

>>1125742
Что ты говоришь) и окно, и отладчик, и терминал) все на жиэс) больше не написали что ли?

> Ну и нужно понимать, что JS создавался для решения задач в вебе
Лiл! А как же ноде жыэс?

Касаемо 7 лет жыес — это вообще пиздец как смешно. Откуда такие прогнозы?

Ответы25850

25 янв, 07:45 136 1125850

>>1125848
>Лiл! А как же ноде жыэс

Хуил.

Это хипстоподелие появилось спустя овер 20 лет с появления JS и оно было, как это принято у хипстеров, разаработано с использованием готового кода гугла, которые действительно, несмотря на пидарские понятия в своей конторе, сумели сделать действиельно быструю для говнодинамического языка вещь (вот почему лисп языком для веба не сделали).

За эти 20 лет язык JS и его реализации в браузерах менялись, да. Как в советском анекдоте по доработке баржи в авианосец напильником. Изначально предназначенный для написания колбеков в тегах <form> и ЦвЕтНыХ БеГуЩиХ СтРоК:) начинал превращаться в монстра.

Ответы25854

25 янв, 08:08 137 1125854

>>1125850
Безусловно, даже на чистом HTML можно сделать достаточно много, и жс часто бывает overused. Но насчёт монстра я не согласен. Да, есть большое количество легаси, но его уже решили через бабел, пожалуйста, выбирай себе произвольные цели для сборки, любые наборы браузеров, и оно высрет из твоего ES7 то что заработает даже на старом осле.

В жс действительно есть несколько нелогичных вещей, пришедших ещё из эпохи его рождения, все эти таблицы равенства, {} + [] и прочий WAT. Но за последние годы такого говна в жс никто не добавлял.

Вот ещё все ругаются на тему сахара, якобы сам язык не развивается, только сахар добавляют. Ну так этот сахар ни что иное, как лучшие практики, выбранные в том числе из надстроек над тем же жс. Я сомневаюсь что сообщество будет радо если жс запилят с нуля и все батарейки придётся переписывать. А так всё обратно совместимо, некоторые старые вещи даже органично захотят под новые сахарные фичи, всем хорошо, какие тут проблемы могут быть?

Жс не так уж плох, серьёзно. Взять например луа, там всё конечно просто и красиво, но стдлиба и таблицы порезаны под самый минимум, будь в браузере луа, был бы ещё больший бардак с переизобретением примитивов. Поэтому луа доминирует в минималистичных встроенных скриптах и больше нигде. Жс это уже следующая ступень сложности. Дальше питон-руби, но эти уже сильно завязаны на свою стдлибу и намного труднее изолируются в сэндбоксы: например встроенная функция open в питоне, её никак не вырезать.

Сейчас тренд по сути в том, чтобы затащить как можно больше функционала нативно в браузер и выставить наружу простые апи для жс. Да, получается своебразная ОС внутри ОС, но по степени распространённости эта платформа уникальна, ни одна другая не была так популярна, кроме возможно совокупно всех мобильных платформ вместе взятых. Браузер это ни что иное как удобный сэндбокс для безопасных приложений не требующих установки, и совсем не обязательно топить за исключительное использование его как текстового движка. То есть вся эта ботва становится универсальной и сложной, вполне себе энтерпрайзной и тяжёлой, и это неизбежно.

25 янв, 08:08 137 1125854

>>1125850
Безусловно, даже на чистом HTML можно сделать достаточно много, и жс часто бывает overused. Но насчёт монстра я не согласен. Да, есть большое количество легаси, но его уже решили через бабел, пожалуйста, выбирай себе произвольные цели для сборки, любые наборы браузеров, и оно высрет из твоего ES7 то что заработает даже на старом осле.

В жс действительно есть несколько нелогичных вещей, пришедших ещё из эпохи его рождения, все эти таблицы равенства, {} + [] и прочий WAT. Но за последние годы такого говна в жс никто не добавлял.

Вот ещё все ругаются на тему сахара, якобы сам язык не развивается, только сахар добавляют. Ну так этот сахар ни что иное, как лучшие практики, выбранные в том числе из надстроек над тем же жс. Я сомневаюсь что сообщество будет радо если жс запилят с нуля и все батарейки придётся переписывать. А так всё обратно совместимо, некоторые старые вещи даже органично захотят под новые сахарные фичи, всем хорошо, какие тут проблемы могут быть?

Жс не так уж плох, серьёзно. Взять например луа, там всё конечно просто и красиво, но стдлиба и таблицы порезаны под самый минимум, будь в браузере луа, был бы ещё больший бардак с переизобретением примитивов. Поэтому луа доминирует в минималистичных встроенных скриптах и больше нигде. Жс это уже следующая ступень сложности. Дальше питон-руби, но эти уже сильно завязаны на свою стдлибу и намного труднее изолируются в сэндбоксы: например встроенная функция open в питоне, её никак не вырезать.

Сейчас тренд по сути в том, чтобы затащить как можно больше функционала нативно в браузер и выставить наружу простые апи для жс. Да, получается своебразная ОС внутри ОС, но по степени распространённости эта платформа уникальна, ни одна другая не была так популярна, кроме возможно совокупно всех мобильных платформ вместе взятых. Браузер это ни что иное как удобный сэндбокс для безопасных приложений не требующих установки, и совсем не обязательно топить за исключительное использование его как текстового движка. То есть вся эта ботва становится универсальной и сложной, вполне себе энтерпрайзной и тяжёлой, и это неизбежно.

Показать весь текст

25 янв, 11:19 138 1125946

>>1125799
Сейчас бы пытаться вяло трольнуть используя вырванные из контекста протухшие цитаты.

25 янв, 17:36 139 1126141

>>1123987
У объектов один и тот же интерфейс (список полей одинаковый), поэтому TS похуй

25 янв, 19:19 140 1126203

>>1125748
Какой блядь проект? Анончик же написал что не может в циклы пока даже въехать.
>>1125739
Пытайся представлять принцип действия программы у себя в голове. Просчитывай значения всех переменных на каждом шаге цикла, сначала будет сложно, потом придет понимание и будет уже полегче. Если сразу очень тяжело и все-таки подглядел решение, то попробуй вернутся к задаче через некоторое время и решить уже самостоятельно, так лучше будет для запоминания принципа работы.
Алсо если твоя программа правильно работает, но код отличается от того что написан в учебнике то это не неправильное решение. Оно может конечно выглядеть иногда слишком громоздко по сравнению с кодом опытного программиста, но это нормально, ты же сейчас только учишься.

25 янв, 20:37 141 1126273

Зачем вообще учить всякие фреймворки типа того же AngularJS, почему не пишут на чистом JS? Ускорение разработки и удобство? Можно подробнее об этом?
Алсо, пишут ли на чистом JS для реальных сайтов? Имею в виду фронтенд.

Ответы262962630226604

25 янв, 20:59 142 1126296

>>1126273
>Зачем вообще учить всякие фреймворки типа того же AngularJS, почему не пишут на чистом JS? Ускорение разработки и удобство? Можно подробнее об этом?
http://blog.topolyan.com/почему-angularjs/

> Алсо, пишут ли на чистом JS для реальных сайтов? Имею в виду фронтенд.
В реальных проектах гораздо чаще используются фреймворки.
А на бэкенде используют NodeJS, на чистом там очень вряд ли можно писать.

Ответы26634

25 янв, 21:08 143 1126302

>>1126273
Попробуй попиши на чистом жс, через год-два изобретёшь ангуляр.

Ответы26325

25 янв, 21:28 144 1126325

>>1126302
Двачую.

183 Кб, 1920x1050
25 янв, 21:51 145 1126343

Анон, продублирую из треда голанга здесь, вдруг есть работавшие с го и бойлерплейтами на его основе (го + реакт).

Добрый день, анон, фронтедер на связи.
Пытаюсь развернуть проект, чтобы посмотреть, как взаимодействует реакт с го, в будущем проекте пригодится
https://github.com/olebedev/go-starter-kit
установил golang, прописал gopath, тестовая прога получилась (hello world), в общем, когда прописываю make install получаю хуйню, как на пике. Гуглеж ничего не дал, все зависимости, насколько могу судить, установлены.
Yarn установлен глобально, glide установлен глобально, просто, почему-то, не хочется видеть @yarn и @glide и иже с ними.
Если просто прописываю yarn install && glide install, все проходит, но, опять же, make server выдает хуиту.
Гуглеж не помог, в чем может быть дело?
Спасибо.

Ответы26416

25 янв, 23:58 146 1126416

>>1126343
> generate mocha

Ответы26454

26 янв, 00:39 147 1126454

>>1126416
<занудаmode>Это читается мокка</занудаmode>

Ответы26483

26 янв, 01:08 148 1126469

Jquery 3.3.1 вышел, перекатываемая пацаны

Ответы26605

26 янв, 01:23 149 1126483

>>1126454
Нет. К это Мокито.
А ваша mocha это моча. Даже логотип нездорового цвета и значок вони над стремной жидкостью.

26 янв, 09:33 150 1126604

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

Ответы26947

26 янв, 09:34 151 1126605

>>1126469
>Jquery 3.3.1
>jQuery
>2018
Ты что, больной?

26 янв, 12:03 152 1126634

>>1126296
>А на бэкенде используют NodeJS, на чистом там очень вряд ли можно писать.
А чем нода сама по себе не чистый JS-то? Вполне можно накостылять что-то и без экспрессов с вуеами.

Ответы26794

26 янв, 17:47 153 1126794

>>1126634
> дней без нового жс фреймворка: 0

26 янв, 18:24 154 1126818

Занудный задрот стал спрашивать нудным голосом дебильные вопросы под смешки других задротов на заднем плане, можно ли импортировать файлы и прочую хуету по ES6. Меня это жутко взбесило, т.к. я пишу код лучше, чем разговариваю о нем.

26 янв, 21:10 155 1126947

>>1126604
Поясните, откуда такой дроч на чистый жс (с)? JS как язык дрисня, а без фреймворков так еще и дрисня с которой хуй что сделашь без 13 колес.

Ответы269832698927089

26 янв, 22:10 156 1126983

>>1126947
Потому что чтобы сверстать простенький динамичный интерфейс не обязательно тянуть зависимостей на 500кб. Кроме того, если ты знаешь ваниллу - значит и в любом хипстерговне разобраться не составит труда.

А вот если ты знаешь Vue - ты знаешь vue.

26 янв, 22:20 157 1126989

>>1126947
Я об этом слышал в основном в двух контекстах:
1) Без jQuery — действительно, уже из коробки есть querySelector, для анимаций есть css, и в целом все эти селекторы уже не так нужны, так как новые фреймворки собирают дом/назначают эвенты сами. Остаётся только аякс, который уже вырезали и выкатили во всяких Fetch.
2) Без coffee/any/script — только мозг пожирает необходимостью писать одновременно на двух языках, без очевидных на сегодняшний день профитов.

14 Кб, 488x378
26 янв, 23:35 158 1127037

вы че с языком сделали утырки?

Ответы27041

26 янв, 23:42 159 1127041

>>1127037
Судя по книгам из книготреда, так обычно не пишут, а на картинке у тебя — это всего лишь игра со стрелочными функциями, которые используются чуть более, чем нигде.
Пишут "function", как и раньше писали.

Ответы270552718528519

27 янв, 00:01 160 1127055

>>1127041
До поры до времени. Перепишут более-менее значимые в сообществе либы на новый стандарт отойдут от дел погроммисты старой формации и потечёт говно по трубам. Дело времени.

Я помню ещё те времена, конда сишники писали на джиси. Блядь, эти ебаные точки входа в виде глобальной функции main() просто убивали. Они там так хуевертили... имена переменных размером больше, чем содержимое переменной.

179 Кб, 854x1394
27 янв, 01:15 161 1127083

>>1123037 (OP)
Как организовываете код в своих фулстек-говнопроектах, ананасы? Набросал примерно такую структуру, за клиентскую архитектуру даже еще не брался. У кого какой опыт в данном плане?

27 янв, 01:40 162 1127089

>>1126947
>JS как язык дрисня
Пиздабол. У JS мощнейшая OS, по мощности сравнима разве, что с CLOS или Smalltalk. Критиковать это могут лишь недалекие люди.

27 янв, 03:27 163 1127122

6 Кб, 566x16615 Кб, 531x301

анусы объясните, как избавиться от хуйни на пике?
убрал вопрос на пик2 (сюда ссылается ошибка на первой) тоже самое

27 янв, 10:41 164 1127185

>>1127041
Я перестал писать так, как узнал, что такое декларативный подход и функциональное программирование.

27 янв, 11:50 165 1127216

>>1123037 (OP)
Работаю бекенд-мартышкой, к фронту не подпускают. Поясните, аноны. Везде, где работал писали на ES5, ES6 и компилировали потом всё дерьмо каким-нибудь gulp webpack в удобочитаемый формат для старых браузеров. Зачем так в 2к18 делать? То есть никто не пишет код на ES6 сразу на прод без конвертации в старые стандарты?

Второй вопрос, вот ввели вам class и прочие прелести. Вы ими пользуетесь? Если да, то сразу на продакшн или тоже конвертируете в старый формат?

Ответы273102731427375

27 янв, 14:27 166 1127310

>>1127216
Всё зависит от аудитории сайта. Если смузи-стартап, то можно и свежачок делать для молодёжи. А вот для Вкончактика или Тындекса пользователи ИЕ8 или Андроид4 это тьма рублей.

Транспайленый для старья код больше весит и медленней работает. Можно делать две сборки, оригинальную ЕС201x и геронтофильскую ЕС5. Через фичер-детекшон пусть загружается только подходящая. Но тогда придётся две сборки поддерживать, ёк-макарёк, идти на компромиссы, либо тратиться.

Но это всё заморочки под смузи потрещать.
Во-первых, все абстракции дырявы. Упомянутые новенькие классы подведут. Всё равно нужно знать и держать в голове работу функций-конструкторов и прототипное делегирование, на которых покоятся классы.
Во-вторых, ЖС изначально Тьюринг-полный. "Им будет непросто, тем кто парится о коде, а не о структурах данных и их взаимоотношениях".
В-третьих, больше проблем с поддержкой ВебАПИ, а не ЕС.
В-четвёртых, код это не продукт.

Ответы2731329064

27 янв, 14:34 167 1127313

>>1127310
Удачи тебе в использовании async/await в браузерах без транспиляция.

Ответы27336

27 янв, 14:34 168 1127314

>>1127216
Потому что если так не делать, к тебе подойдет твой рабовладелец и скажет "У моей знакомой тети Петуньи" с телефона "Нокиа5-65" твоя фича не работает. У дяди Веруна с его компьютера (ie8) тоже не получается, и вообще, мне люди постоянно пишут насчет этой проблемы, посмотри в чем там дело. мимо лишь однажды выкатил стрелки в продакшен, даже не ES6 классы

Ответы273362757728520

27 янв, 15:03 169 1127329

хочу изучить js или джаву.чем они отличаются и что лучше?

Ответы27360

27 янв, 15:29 170 1127336

33 Кб, 835x62145 Кб, 835x1200

>>1127313
>>1127314
Передайте мне там, чтоб я к биткам посерьёзней отнёсся.

Ответы2736927374

27 янв, 16:12 171 1127360

>>1127329
Джаваскрипт для фронтенда в основном.
Джава - бля бэкенда, мобильной разработки.
Это совершенно разные языки.
Решать тебе.

27 янв, 16:21 172 1127369

>>1127336
Ну и? По твоим же скринам видно, что у 13,5% нет поддержки arrow function, 12% ES6 декларации классов и почти у каждого пятого поддержки async await. Этого мало что-ли? Че хуйню несешь? Если бы у каждого стоял последний хром - жизнь была бы прекрасна и никто не ебался бы с этими бабелями.

Радуйтесь, что хотя бы можно верстать на флексах с подключенным автопрефиксом.

27 янв, 16:25 173 1127374

>>1127336
>Зачем так в 2к18 делать?
Потому что легко и похуй. В любом случае надо собирать всю хуйню в один или чуть больше файлов и минифицировать. И вот заодно и делается поддержка всякого говна, на читаемость и отлаживаемость не влияет, т.к. есть соурсмапы.

>вот ввели вам class и прочие прелести. Вы ими пользуетесь?
Каждый день. Фронтенд если - то конечно собирается в старый формат. Если нода, то нет, конечно, всё делается напрямую.

Ответы27375

27 янв, 16:26 174 1127375

>>1127216
>>1127374

27 янв, 19:48 175 1127511

Как вернуть код из функции?
К примеру мне надо
return 'krokodil' + zalupa+ 'sir'
Но zalupa по понятным причинам не видна, поскольку в другой функции. А в аргументы пихать плохая идея, т.к. там много таких переменных.

Ответы27516

27 янв, 20:06 176 1127516

>>1127511
Три варианта:
1) zalupa была задекларированна в лексической области этой функции.
2) zalupa - аргумент этой функции соответственно попадает в ее лексическое окружение тоже.
3) каждая функция при рождении имеет ссылку [scope] на объект в области которого она была объявлена, в частности - это может быть window. т.е zalupa может быть объявлена глобально, тогда с ней можно работать.

От себя могу посоветовать не использовать глобальные переменные, а как раз отправлять залупу в аргументы. Это как раз лучшая идея. Потому что изменяемая во многих местах сущность приводит к сайд-эффектам, которые тяжело дебажить. Если залупа будет глобальной и всячески изменятся, когда код разрастется и перевалит за 1500 строк только БОГ разберется, что с ней происходит.

27 янв, 22:08 177 1127577

>>1127314
тётя Петуния и дядя Вернон, это ты, что ли, Дудлик?

27 янв, 22:28 178 1127589

Есть ли расшаренные аккаунты BrowserStack? 40$ за то, чтобы пройти пару тестиков в различных разрешениях и браузерах - дороха.

Ответы27717

28 янв, 02:25 179 1127717

>>1127589
Виртуалки используй.

Ответы27734

28 янв, 03:42 180 1127734

>>1127717
А для iOS Safari?

Ответы27828

28 янв, 11:19 181 1127828

>>1127734
Виртуалку с OS X, в ней есть инструменты для разработки и эмуляции под iOS

28 янв, 18:53 182 1128144

>>1123312
Бампну чтоли. Не ужели тут никого кроме совсем джунов нет?

Ответы28422

28 янв, 19:00 183 1128149

>>1123037 (OP)
А вот хуй, после Spectre/Meltdown с вебассемблями придётся погодить.

Ответы28652

29 янв, 02:05 184 1128422

>>1128144
>>1123312
По коду все в порядке. О логике ты сам заметил ошибки, (кэширование) так что хули тут ценивать.
Можешь еще тесты ебануть.

30 Кб, 685x323
29 янв, 03:25 185 1128434

утипути, это кто тут у нас api у других языков пиздит?

29 янв, 06:53 186 1128477

>>1125742
>Самый пиздатый редактор VSCode написан на JS целиком и полностью.

Sublime-боярин не перестает проигрывать с электронных детей у которых даже текстовый редактор умудряется лагать.

29 янв, 09:36 187 1128519

>>1127041
Function уже давно никто не пишет, потому что пробрасывать контекст заебало выше крыши. А на картинке просто упражнение, и никакого отношения к тому, хороши стрелочные функции или плохи, это не имеет

Ответы28675

29 янв, 09:37 188 1128520

>>1127314
Бабелем мы, конечно, пользоваться не умеем?

Ответы28684

29 янв, 10:39 189 1128539

Как же что wasm уничтожит ваш JS.

Ответы2855228652

29 янв, 11:22 190 1128552

>>1128539
Никогда он не уничтожит. По той же причине, по какой жив PHP.

61 Кб, 476x427
29 янв, 15:08 191 1128652

>>1128149
>>1128539
Ты СОВЕРШЕННО не понимаешь в чем суть WASM. WASM не системное программирование «о, я кул-хацкер, ща получу произвольный доступ к памяти». WASM это не другая псевдоинтеллектуальная платформа для серьёзных программ, такая платформа сдохла в Вебе и бесконечно агонизирует в аду тырпрайза. WASM это не нуль-пойнтеры, сисьадминские гоферы или ад в наследство. WASM это место, где люди могут побыть чудовищами — писать для JS без JS, без автотипов, автопамяти, сахарка и прочих "удобностей", которые дорого стоят. WASM выполняется на JS-машине и принципиально не может ничего, чего не может JS, ведь сохраняется смелость выполнить произвольный код из произвольного места в Вебе.
Ты хочешь параллелить потоки на произвольном устройстве произвольной архитектуры, а мы смеёмся и просим ещё. Ты хочешь заменить самый жирный менеджер пакетов — мы смеёмся. Ты хочешь среди тьмы дешёвых макак найти оптимизирующих байтоёбов — мы смеёмся. Мы бездушно перепишем на JS что угодно, наши фреймворки не основаны на здравом смысле, складывать массив с числом и получать строку — наша стихия, мы — истинное лицо Интернета.

Ответы28658

29 янв, 15:18 192 1128658

>>1128652
это вот сейчас что за поток сознания был?

29 янв, 16:18 193 1128675

>>1128519
>Function
Не путай объект с литералом.
>никто не пишет
Не говори за всех.
>потому что пробрасывать контекст заебало
Не все, как и ты не умеют и не понимают контекст.

Ответы29063

138 Кб, 800x533
29 янв, 16:28 194 1128684

>>1128520
Ты жопой чтец. Человек выше писал зачем транспилировать код, я написал что будет если забыть его транспилировать.

29 янв, 22:47 195 1128919

есть вопрос. где-то в коде(js) ошибка( event.target.style.backgroundImage),
эта хуета меянет фон объекта, и это логично, однако так же меняется и фон объекта котоыйр мне бы менять не хотелось.
Поэтому я пишу
event.target.style.backgroundImage = бла-бла;//
table.backgroundImage=null;
по-идее если у меян случайн оменяется фон таблицы то я сразу же его обнуляю. однако это не работает. Я засунул( table.backgroundImage=null;) везде где только можно, буквально каждой вторйо строчкой, однако фон продолжает меняться. Есть ли способ заблокировать изменение определенного свойства элемента даже после прямого указания через js .style. = 'smt';
?

Ответы2901429015

29 янв, 23:31 196 1128954

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

Ответы2896428966

29 янв, 23:57 197 1128964

>>1128954
Только хотели перекатиться. Но раз ты хочешь задать вопрос, то так и быть, подождем тебя.

Ответы28993

30 янв, 00:03 198 1128966

>>1128954
> перекатываться в новый тред
Только ради нового фреймворка.

26 Кб, 716x520
30 янв, 00:56 199 1128993

>>1128964
Ого, спасибо! Вот вопрос:
Почему в случае с данной конкретной оберткой, bind, мы в неё ложим еще одну промежуточную функцию, а уже тогда в неё ложим ту, которую принимаем извне как аргумент? Почему нельзя сразу

function bind(context, func) {
return func.apply(context);
}

?

Я понимаю, что так не работает, уже пробовал, просто не понял - почему?

П.С.
Если бы я делал какой-то декоратор, то тут вопросов нет потому, что я бы спрятал вспомогательные переменные или функции в замыкании. Поэтому раньше я не задумывался над вопросом, а надо ли обязательно упаковывать принимаемую как аргумент функцию в еще одну функцию.

Ответы29001290042900629017

30 янв, 01:39 200 1129001

>>1128993
Я чуть дальше чем ты прошёл, можем вместе заниматься, если хочешь. Я как раз напарника адекватного ищу

Ответы290042907429328

30 янв, 01:42 201 1129003

Аноны, я запускаю на нод.жс сервер вместе с экспрессом чтобы попробовать выучить реакт, но он не видит русской кодировки. Я так понимаю мне надо что-то дописать в server.js?

30 янв, 01:45 202 1129004

>>1128993
>>1129001
Чтобы её можно было вызывать

Ответы29074

30 янв, 01:47 203 1129006

>>1128993
И странно что у тебя не работает, у меня всё работает, просто тогда она сразу запускается, без скобок, вот и вся разница

Ответы29074

30 янв, 03:39 204 1129014

>>1128919
Интересно, откуда вы с такой логикой вылезаете. Где вас таких выращивают-то, блядь?

30 янв, 03:40 205 1129015

>>1128919
>где-то в коде ошибка
Она не в коде, а в голове у тебя.

Сквозь прозрачное ты видишь то, что за ним.

30 янв, 03:45 206 1129017

>>1128993
>ложим
Кладём.

>Почему нельзя сразу
Потому что bind должна возвращать функцию с привязанным констекстом и агрументами. А ты return func.apply(context); пытаешься вернуть результат функции, а не новую функцию.

>Я понимаю, что так не работает
Ты не правильно понял что такое bind.

Ответы29074

30 янв, 10:26 207 1129063

>>1128675
>Не путай объект с литералом.
function, так тебе проще будет? Ну что за довн.

>Не все, как и ты не умеют и не понимают контекст.
Умею и знаю. Что там знать и уметь? Сиди целыми днями пиши let _self = this, как деды писали 10 лет до этого, не выёбывайся, да? Или ты у нас вообще, может, функциональщик головой удареный?

>Не говори за всех.
Да пиши сколько влезет, похуй.

Ответы29077

30 янв, 10:29 208 1129064

>>1127310
>Транспайленый для старья код больше весит и медленней работает
Ну такое, оверхед процентов 5-10, не больше, от пресета.

30 янв, 10:40 209 1129069

Пишу расширение для хрома. Можно ли как-то сделать скриншот определенной области (определенного div-а, например), а не видимой страницы?

chrome.tabs.captureVisibleTab – делает скриншот видимой страницы.
html2canvas – "You shouldn't use html2canvas in a browser extension. Most browsers have native support for capturing screenshots from tabs within extensions."

Ответы290762911329455

30 янв, 10:53 210 1129074

>>1129017
>>1129004
>>1129006
Спасибочки, теперь понял!

>>1129001
А как это - вместе? В чем будет состоять взаимодействие?

Ответы29425

30 янв, 10:56 211 1129076

>>1129069
делай скриншот видимой странице и обрезай его по координатам нужного тебе дива. где твоя логика? если ты будешь перерендерить div на canvas средствами webapi, это будет менее производительнее и так или иначе костыли, потому что не предназначено, и не все варианты отрендерятся правильно.

так что прекращай тупить.

Ответы2907829297

30 янв, 10:59 212 1129077

>>1129063
>Сиди целыми днями пиши let _self = this
Если ты считаешь, что контекст нужен только для того, чтобы его пробрасывать, то ты ебанутый на всю голову.

Ответы30003

30 янв, 11:10 213 1129078

>>1129076
>и обрезай его по координатам нужного тебе дива
Если бы все нужные мне дивы были расположены в видимой области, то я бы так и делал. Но они могут располагаться и в невидимой области.

Ответы2908629087

30 янв, 11:29 214 1129086

>>1129078
скроль до туда, где див становится видимым, потом возвращайся обратно.

30 янв, 11:31 215 1129087

>>1129078
у новых хромов есть еще способ скринить всю страницу целиком через debugger protocol, но я не углублялся в вопрос того, сможешь ли ты до него достучаться из расширения. гугли сам.

30 янв, 12:21 216 1129113

>>1129069
сук ты че не можешь в хром веб стор запрос сделать и посмотреть есть ли такое?
https://chrome.google.com/webstore/detail/element-capture/kabgnkphidokfocflfangphgdjhkknjg
а потом перейти на их гитхаб и посмотреть как там следано?
https://github.com/tlrobinson/element-capture

Ответы29114

30 янв, 12:24 217 1129114

>>1129113
Но ты ведь даун, расширению шесть лет уже, код не меняли два года. по-твоему новых апи вообще не пилят что ли?

вот как я написал выше, например через дебаггер протокол теперь можно, с 59ой версии. а раньше нельзя было и надо было выебываться скроллом туда-сюда.

ебучие, скрипт кидди.

Ответы29117

30 янв, 12:30 218 1129117

>>1129114
займись этим.
новое апи там вот это все
> у новых хромов есть еще способ скринить всю страницу целиком через debugger protocol, но я не углублялся в вопрос того, сможешь ли ты до него достучаться из расширения. гугли сам.
и этим займись

только вот я уже решил то на что ты потратишь n человеко часов а с таким умением проводить причинно следственные возможно даже человеколет

и ты меня называешь скрипт кидди

30 янв, 19:06 219 1129297

>>1129076
Обрезка изображения с помощью какой-то библиотеки будет производительнее, чем рисование на canvas?

>1129113
Это совсем не то, блять. Дивы могут не быть изображены на экране в текущий момент, но они находятся на странице.

>1129087
Это интересно. Поищу эту тему. Но думаю, что хуй мне даст хром. Уж слишком у него ебливая политика безопасности.

Ответы29453

30 янв, 19:40 220 1129328

>>1129001

Анончииииик! Отзовись, мне интересно.

Ответы29425

30 янв, 22:28 221 1129383

О, не заметил JS тред. Репост >>1129381

31 янв, 01:29 222 1129425

>>1129328
>>1129074
Это ты? Да, я тут. Ну как в чём, будем пытаться вместе учить, делать задания, сравнивать. Обучение больше социальный процесс, когда есть кто-то кто делает с тобой, то легче учится и идет

Ответы29532

31 янв, 05:21 223 1129447

Вопрос на миллион, аноны.
В чем разница?
Article.prototype.showCount
&
Article.showCount
И тот и другой showCount будет доступен для всех объектов созданных конструктором Article.
Когда выбирать какой случай использовать?

Ответы29448

31 янв, 05:29 224 1129448

>>1129447
Всё понял. Во втором случае это функция функции как бы. Сейчас проверю может ли быть функция функции функции. По идее да.
Да, всё понятно, в первом случае это метод для именно наследуемого объекта и его дети будут наследовать его

Ответы29449

31 янв, 05:34 225 1129449

>>1129448
Article.plusName.plusSurname = function() {
return this.name + "ala";
}

Очень интересно. Если писать просто
Article.plusName = function() {
return this.name + " ashke";
}
То он видит this.name и выдает Article + ashke, но если добавить ещё один метод, то у него уже this.name отсутствует. Интересно, почему не унаследовался?

31 янв, 06:02 226 1129453

>>1129297
>Обрезка изображения с помощью какой-то библиотеки
Какой нахуй библиотеки. Ты его обрезаешь встроенными в язык средствами блядь. Тем же канвасом если хочешь.

И да, обрезать цельное изображение на канвасе будет быстрее, чем рендерить на него же отдельные слои.

31 янв, 07:03 227 1129455

>>1129069
В курсе что monosnap лет 18 как изобрели?

31 янв, 09:17 228 1129478

>>1123037 (OP)
Пошел на хуй, говнокодер ебаный сука.

31 янв, 14:01 229 1129532

>>1129425
Да, это я. Ну, давай! Идея интересная. У меня есть дискорд ThermoLyrics, аккаунт в Лиге легенд ThermoLyrics и даже вконтактик id34627297, правда, я туда редко захожу, так что ты скажи сам как тебе удобней связаться.

Ответы2953429797

31 янв, 14:02 230 1129534

>>1129532
>дискорд
Почему все пользуются этим убогим неудобным тормозным говном?

Ответы29543

31 янв, 14:22 231 1129543

>>1129534
Нет ответа на этот вопрос, потому что сам вопрос дурацкий. Дискорд работает намного быстрее чем скайп. Стабильность вполне нормальная. Удобный интерфейс. Нет анальной слежки.

Ответы29549

31 янв, 14:30 232 1129549

>>1129543
хз хз, грузится секунд по 60, какие-то обновы качает каждый раз, причём непонять какие, насчёт быстроты непонятно, старый скайп всяко быстрее. А про анальную слежку - вообще лол. Шифрования там по сути нет.

Ответы29551

31 янв, 14:34 233 1129551

>>1129549
А толку от шифрования, если контора сама добровольно тебя сдает с потрохами.

Ответы29554

31 янв, 14:52 234 1129554

>>1129551
Ну а смысл тогда про анальную слежку говорить было?

Ответы29563

31 янв, 15:10 235 1129563

>>1129554
В смысле? Скайп и Винда сдают.

116 Кб, 1024x749
31 янв, 16:41 236 1129612

Репост из соседнего треда?
Как вообще так получается что твои знания ява скрипта могут устареть за пол года?
Жабаскрипт так от фреймворков зависит, или средний джаваскриптокодер настолько некомпетентен что не может в базовые алгоритмы?
Без фреймворка сереализацию не написать чи шо?
Без подъебок, просто академический интерес.
Слышал что кто то даже работу терял после выхода новых фреймворков. Типа переучится не смог.
Чему же он тогда учился?

Ответы296162965029926

31 янв, 16:45 237 1129616

>>1129612
90% JS макак на знают JS, а умеют писать на фрэйворках.
>Как вообще так получается что твои знания ява скрипта могут устареть за пол года?
Никак, язык не менялся вообще года с 2003. Если не считать пары незначительных добавок.
>Жабаскрипт так от фреймворков зависит, или средний джаваскриптокодер настолько некомпетентен что не может в базовые алгоритмы?
this
>Без фреймворка сереализацию не написать чи шо?
Всё гораздо хуже, среднестатистический JS кун спросит "Что такое"
>Чему же он тогда учился?
Не, это типа стандарт профессии. Надо написать новый сайт, находят нового макакия по цене в 2 раза дешевле прошлого.

Ответы29752

31 янв, 17:45 238 1129650

>>1129612
>Чему же он тогда учился?
Так ты тред проскроль.
Большинство не приходит изучать язык или понимать фундаментальные концепты как языка или объектной системы. Они идут изучать фреймворки\стеки которые написаны в вакансиях. Конечно, никакой пользы это не приносит.

Ответы29752

31 янв, 20:34 239 1129752

>>1129616
>>1129650
Ясно. Значит проблема не в языке, а в том что средний кандидат это не программист а наборщик текста по шаблону.
Спасибо что разъяснили.
МимоИзШарпатреда.

Ответы29755

31 янв, 20:39 240 1129755

>>1129752
Как в любой хайповой среде.
В программировании в целом и в айти точно такой же расклад.
А еще в разных юристах, инженерах, менеджерах в разное время.

31 янв, 20:52 241 1129758

learn.javascript.ru, раздел "Замыкания, область видимости", урок [[Scope]] для new Function.
>То есть, если внутри функции есть var userName, то минификатор заменит её на var a (или другую букву, чтобы не было конфликта), предполагая, что так как переменная видна только внутри функции, то этого всё равно никто не заметит, а код станет короче. И обычно проблем нет.
>Но если бы new Function могла обращаться к внешним переменным, то при попытке доступа к userName в сжатом коде была бы ошибка, так как минификатор переименовал её.
>Получается, что даже если бы мы захотели использовать локальные переменные в new Function, то после сжатия были бы проблемы, так как минификатор переименовывает локальные переменные.
>Описанная особенность (тут имеется в виду, что она всегда ссылается на window, а не на LE функции, в которой создана) new Function просто-таки спасает нас от ошибок.
Вопрос - почему если минификатор переименовывает локальные переменные, то при создании Function Declaration эти переменные доступны, а при new Function - нет?

Ответы29773

31 янв, 21:01 242 1129773

>>1129758
Потому что минификатор анализирует синтаксис, и при переименовании локальных переменных переименновывает их там, где они используются, в том числе во внутренней function declaration.

new Function образует функцию из строки, а минификатору поебать на твои строки, он не должен их обрабатывать. Они вообще могут быть входными данными. Следовательно, у тебя там остаются использоваться переменные со страыми неминифицированными именами, которых в минифицированной версии уже нихуя нет.

Ответы29776

31 янв, 21:03 243 1129776

>>1129773
Понял, спасибо. Кажется.

Ответы29785

31 янв, 21:14 244 1129785

>>1129776

var variable = 10

function ololo () {
return variable;
}

ololo2 = new Function('return variable')

----
и ololo и ololo2 делают одно и то же.
но после минификации, минификатор переименует переменную variable в двух местах, а там где new Function она останется неизменной потому что минификатор не станет анализировать и изменять строки. В итоге, в минифицированном коде функция ololo2 будет выбрасывать исключение

Ответы29803

31 янв, 21:24 245 1129797

>>1129532
Дискорд что-то не находит

Ответы2980429806

31 янв, 21:28 246 1129803

>>1129785
Разобрался, спасибо еще раз.

31 янв, 21:29 247 1129804

>>1129797
Секундочку.

31 янв, 21:32 248 1129806

>>1129797
#1946
ThermoLyrics
Попробуй еще раз по одному из этих. Дай свой ник, мб я поищу.

31 янв, 23:18 249 1129865

Что лучше использовать async/await или co?

Ответы29923

1 фев, 02:45 250 1129923

>>1129865
>2k18
>не пользоваться асинхами изкоробки

Ответы30061

1 фев, 02:48 251 1129926

>>1129612
>2k18
>не пользоваться асинхами изкоробки
>ему сделали асинхи из коробки
>Делай, вот же они лежат
>Нет, я хочу сосать хуи. Я ведь люблю хуи сосать. Целый велосипед из хуёв сделаю и буду на нём кататься.

Ответы29964

1 фев, 06:41 252 1129964

>>1129926
>эти дрожащие ручонки и промахи мимо постов
Хуево быть тобой.

Ответы29965

1 фев, 06:45 253 1129965

>>1129964
>Переход на личности вместо аргументов
>будто быть тупым школьником траллем быть гораздо лучше.

Ответы29966

1 фев, 06:49 254 1129966

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

Ответы29967

1 фев, 06:55 255 1129967

>>1129966
>Пилит асинхронные велосипеды
>Не считает себя червём пидором

Ответы29972

1 фев, 07:07 256 1129972

>>1129967
>эти проекции веб-мартышки
Следующая стадия деградации - 1с.
Кстати, учи заранее - скоро внешний интернет закроют и все языки кроме 1с запретят.

Ответы29973

1 фев, 07:08 257 1129973

>>1129972
>Пошли маняфантазии вместо аргументов

Ответы29974

1 фев, 07:19 258 1129974

>>1129973
>аргументов
Червям-пидорам вроде тебя аргументы не положены - только говно на лопате.

Ответы29975

1 фев, 07:22 259 1129975

>>1129974
>Червь пидор слишком тупой чтобы генрировать аргументы
>Решил написать хоть что-то чтобы не выглядело что он обосрался

Ответы29977

1 фев, 07:27 260 1129977

>>1129975
>этот сплошной гринтекст который пост
Уроки-то сделал?

Ответы29980

1 фев, 07:29 261 1129980

>>1129977
>Снова переход на личности
>Снова нет аргументов
>Чего ещё ожидать от дауна который решил сумничать но сразу же обосрался.

Ответы29984

1 фев, 08:10 262 1129984

>>1129980
>сумничать
Уроки не сделал, всё ясно.

Ответы299853000130010

1 фев, 08:12 263 1129985

>>1129984
>попытался переключиться на грамматику
>даже тут обосрался

Ответы3000130005

1 фев, 09:02 264 1130001

>>1129985 - >>1129984

Ответы30005

1 фев, 09:05 265 1130003

>>1129077
Блять, ты реально какой-то даун.

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

Ответы30091

1 фев, 09:15 266 1130005

>>1130001 - >>1129985

Ответы3001030012

1 фев, 09:41 267 1130010

>>1130005 - >>1129984

Ответы30012

1 фев, 09:46 268 1130012

>>1130010
>>1130005

1 фев, 12:19 269 1130061

>>1129923
Та чё лучше то?

Ответы30063

1 фев, 12:22 270 1130063

>>1130061
Лучше тебе пройти нахуй.

Ответы30064

1 фев, 12:27 271 1130064

>>1130063
Не уходи от темы.

1 фев, 13:55 272 1130091

>>1130003
То есть ты намеренно себя лишаешь позднего связывания, а дауном называешь его?

1 фев, 14:02 273 1130098

Здарова пацантрэ, сейчас читаю про преобразование типов и эти самые типы в богоподобном js и охуеваю с исключений и, порой, нелогичности даже. Все вот эти вот преобразования null, undefined. Ответьте мне пожалуйста, боги джаваскрипта, в реальной работе это вообще надо будет применять. Просто во всех учебниках какие-то ебанутые примеры, по типу:

Ответы30112

1 фев, 14:03 274 1130099

по типу:
"" + 1 + 0
"" - 1 + 0
true + false
6 / "3"
"2" * "3"
4 + 5 + "px"
"$" + 4 + 5

"4" - 2

"4px" - 2

7 / 0

" -9\n" + 5
" -9\n" - 5
5 && 2

2 && 5

5 || 0

0 || 5
null + 1
undefined + 1
null == "\n0\n"
+null == +"\n0\n"

быстрофикс

1 фев, 14:03 274 1130099

по типу:
"" + 1 + 0
"" - 1 + 0
true + false
6 / "3"
"2" * "3"
4 + 5 + "px"
"$" + 4 + 5

"4" - 2

"4px" - 2

7 / 0

" -9\n" + 5
" -9\n" - 5
5 && 2

2 && 5

5 || 0

0 || 5
null + 1
undefined + 1
null == "\n0\n"
+null == +"\n0\n"

быстрофикс

Показать весь текст

1 фев, 14:35 275 1130112

>>1130098
Так, ладно, я высрал какую-то хуйню. Попробую на конкретном примере.

Вот есть строки, которые преобразовываются в true при преобразовании, кроме пустой строки. Пока "преобразований" я нашёл два:
1. !!
2. boolean(value), где value - строка

Едем дальше, есть сравнение ==, которое сравнивает всё чё угодно, даёт результат в boolean типе и при этом самом сравнении преобразовывает разные типы в числа, а если типы не разные, то строки сравнивает посимвольно, числа как числа, булевы либо равны, либо нет. (сразу прошу поправить, если на данном этапе я уже ошибся)

Есть такой "парадокс", что при сравнении, к примеру, строки и числа:

допустим "0" == 1

получается значение false, хотя при булевом преобразовании (которых я пока знаю 2) строка будет true, как и единица

Тут я подумал, окей, булево преобразование не так работает как обычное сравнение в if. Ну тогда попробую посравнивать с помощью && и ||

Пишу такой вот код:

if(1 == "0"){
alert(1 == "0");
}

alert не срабатывает, ну думаю всё логично, 1 = 1, "0" = 0

Потом пишу такой вот код:

if("0" && 1){
alert("0" && 1);
}

Он мне выводит 1, т.е. как я понял (опять же поправьте, если не так): происходит булево преобразование "0" = true, 1 = true, условие выполняется и мне выводит (а вот тут отдельная тема, я охуел, когда узнал, что логические операторы && и || возвращают первую "ложь" или "истину" соответственно) возвращённую в данном случае 1, т.е. последнюю "истину", т.к. лжи не нашлось слева направо.

Резюмируя:
Помимо того, что прошу ещё раз меня поправить в таких местах, если я не прав. Стоит ли во всё это углубляться или я чего-то не знаю и вот эти ваши ангуляры, реакты, вью, как-то помогают упростить работу с преобразованием типов, а я просто сейчас теряю время на непонятную хуету?

1 фев, 14:35 275 1130112

>>1130098
Так, ладно, я высрал какую-то хуйню. Попробую на конкретном примере.

Вот есть строки, которые преобразовываются в true при преобразовании, кроме пустой строки. Пока "преобразований" я нашёл два:
1. !!
2. boolean(value), где value - строка

Едем дальше, есть сравнение ==, которое сравнивает всё чё угодно, даёт результат в boolean типе и при этом самом сравнении преобразовывает разные типы в числа, а если типы не разные, то строки сравнивает посимвольно, числа как числа, булевы либо равны, либо нет. (сразу прошу поправить, если на данном этапе я уже ошибся)

Есть такой "парадокс", что при сравнении, к примеру, строки и числа:

допустим "0" == 1

получается значение false, хотя при булевом преобразовании (которых я пока знаю 2) строка будет true, как и единица

Тут я подумал, окей, булево преобразование не так работает как обычное сравнение в if. Ну тогда попробую посравнивать с помощью && и ||

Пишу такой вот код:

if(1 == "0"){
alert(1 == "0");
}

alert не срабатывает, ну думаю всё логично, 1 = 1, "0" = 0

Потом пишу такой вот код:

if("0" && 1){
alert("0" && 1);
}

Он мне выводит 1, т.е. как я понял (опять же поправьте, если не так): происходит булево преобразование "0" = true, 1 = true, условие выполняется и мне выводит (а вот тут отдельная тема, я охуел, когда узнал, что логические операторы && и || возвращают первую "ложь" или "истину" соответственно) возвращённую в данном случае 1, т.е. последнюю "истину", т.к. лжи не нашлось слева направо.

Резюмируя:
Помимо того, что прошу ещё раз меня поправить в таких местах, если я не прав. Стоит ли во всё это углубляться или я чего-то не знаю и вот эти ваши ангуляры, реакты, вью, как-то помогают упростить работу с преобразованием типов, а я просто сейчас теряю время на непонятную хуету?

Показать весь текст
Ответы3016330164

1 фев, 16:49 276 1130163

>>1130112
Не помогают.
Знать надо, чтобы на жопу не сесть, в случае отладки непонятной ошибки.
Подробно посмотреть лекцию по этой параше и ПОЧЕМУ так - можно тут https://youtu.be/MyAvPlqM1-I

Из жизненного опыта, используй оператор === и никогда не используй == потому что в JavaScript == может возвращать хоть говно Иисуса. В идеале ты должен знать с какими типами имеешь дело.

Ответы30236

20 Кб, 490x299
1 фев, 16:54 277 1130164

>>1130112
> вот тут отдельная тема, я охуел, когда узнал, что логические операторы && и || возвращают первую "ложь" или "истину" соответственно) возвращённую в данном случае 1, т.е. последнюю "истину", т.к. лжи не нашлось слева направо.
Это часто используется в реакте, при условном рендеренге компонентов. Указывается условие && и компонент, например.

Ответы3023630290

1 фев, 18:41 278 1130236

>>1130163
>>1130164
Спасибо ананасы) Как-нибудь ещё сюда загляну

1 фев, 18:57 279 1130245

Пацаны а как сделать быструю сортировку?

1 фев, 20:12 280 1130290

>>1130164
>хуйня && хуйня.еботня && хуйня.еботня.пиздец && хуйня.еботня.пиздец.сука && хуйня.еботня.пиздец.сука.map(...

Ответы3035130459

27 Кб, 494x358
1 фев, 21:55 281 1130351

>>1130290
Вот сразу видно прожженый реакт-гребец.

1 фев, 22:00 282 1130354

Сап. Вкатываюсь во фронт. Материал книги Флэнегана по JS, вышедшей в 2012, актуален в 20!8?

Ответы30358

1 фев, 22:05 283 1130358

>>1130354
> 2012
> JS
В 2012 и JS-то не было, а ты ещё книгу по нему какую-то нашел.

75 Кб, 720x876
1 фев, 22:28 284 1130373

я бля не понимаю почему
> Parameter 'callback' implicitly has 'any' type
если я определил интерфейс в котором указал тип этого параметра и вполне себе явно.
мне еще раз надо копипастнуть?
че там с DRY?

Ответы3037730425

69 Кб, 720x876
1 фев, 22:33 285 1130377

>>1130373
охуительно, восхитительно джва раза писать одно и тоже.
если понадобится передавать в параметры колбэка массив строк, меняй сразу в двух местах.

Ответы30419

1 фев, 23:35 286 1130419

>>1130377
Ты даун? Ебни интерфейс и используй его:
interface myCallbackType { (myArgument: string): void }
public myCallback : myCallbackType;

Ответы30425

1 фев, 23:51 287 1130425

>>1130419
не понял тебя:
вот на пике
>>1130373
есть Vector2dInterface
и его методом toArray 3я строка, там определен параметр callback и его параметры
я имплементирую этот интерфейс и его метод toArray
но TS ругается дескать ты не определил тип параметра callback. Хотя я определил же в интерфейсе.
> interface myCallbackType { (myArgument: string): void }
это понятно, но мне придется это прописать в двух местах на строках 3 и 16? Если да то вопрос почему так/так и должно быть?

Ответы30439

131 Кб, 1230x608
2 фев, 00:33 288 1130439

>>1130425
Я вообще на вашем сранном TS не писал ни разу, но разве пикрил - не то что тебе нужно?

Ответы3044430445

2 фев, 00:42 289 1130444

>>1130439
Это и нужно, вопрос то опять же в чем:
какой смысел в том что ты написал на 13 строке
callback: Vector2DCallbackInterface
?
Ты же тоже самое написал на восьмой строке.
Разве ТС не должен знать что toArray получает callback с таким то типом указанным в его интерфейсе? Зачем ты второй раз указал тип параметра callback? Это же бессмыслица

выходит что метод toArray класса Vector может получить параметр callback: number? Тем самым насрав на то, что говориться в интерфейсе его описывающем?

Ответы3045330479

24 Кб, 502x365
2 фев, 00:45 290 1130445

>>1130439
Видишь? Он выебывается если я задам колбэку тип boolean, но в то же время выебывается если я вообще не буду прописывать тип исходя из того, что я прописал его в интерфейсе.
Я логику такого поведения не пойму чет

2 фев, 01:04 291 1130453

>>1130444
dd

2 фев, 01:27 292 1130459

>>1130290
Зачем?

Ответы31968

2 фев, 02:26 293 1130479

>>1130444
Я не понял, если тебе взападло каждый раз явно прописывать типы - че ты на ES6 не сидишь-то? В какой-нибудь сраной жаве, если ты имплементишь интерфейс - то тоже должен заново прописать все типы, хотя, они уже и так, казалось бы, в интерфейсе прописаны. И в скале тоже, хотя там оно по-другому называется. Так-то.

2 фев, 04:50 294 1130522

Почему в этом говноязыке едут коллбеки через промисы? Где синхронный код-то, блять, я уже устал скобки расставлять, какой-то ебаный лисп получается.

2 фев, 05:16 295 1130528

Анон, поясни пожалуйста, сил моих больше нет. Я слишком тупой, походу

Для js клик мышкой и клик программно через element.click() - это одно и то же?

Можно это как то обойти?

Допустим, на странице есть див элемент.

Если я навожу на него мышкой, программно срабатывает this.click(). Это нужно для того, что я передал ебаному сайту инфу о том, что я этот объект выбрал, типа кликнул на него

Но в то же время у меня стоит другой листенер, который детектит клик и запускает div.ScrollIntoView()

ТАК ВОТ МНЕ НАДО ЧТОБЫ ЕБАНЫЙ SCROLLINTOVIEW СРАБАТЫВАЛ ТОЛЬКО ТОГДА, КОГДА Я ДЕЛАЮ НАСТОЯЩИЙ КЛИК МЫШКОЙ, А НЕ ПОСЛЕ ТОГО, КАК Я НАВОЖУ НА ОБЪЕКТ, ПРОИСХОДИТ ПРОГРАММНЫЙ CLICK(), ЕБАНЫЙ ЛИСТЕНЕР ЭТОТ КЛИК ДЕТЕКТИТ И СУКА ВРУБАЕТ SCROLLINTOVIEW

Как вообще эту залупу реализовать правильно? Чтобы при наведении на объект он как бы выбирался, но скроллинга не происходило. Скроллинг нужен только, если я реально кнопкой мышки нажму

Ответы30529305303055230555

2 фев, 05:22 296 1130529

>>1130528
>Если я навожу на него мышкой, программно срабатывает this.click(). Это нужно для того, что я передал ебаному сайту инфу о том, что я этот объект выбрал, типа кликнул на него

Вообщем, один из вариантов решения как понимаю.
Как передать сайту, что я кликнул на объект, просто наведя на него мышкой, не кликая на него ни кнопкой, ни через click()?

Ответы30533

2 фев, 05:23 297 1130530

>>1130528
Даунич. Там помимо клика есть еще несколько событий. Испрользуй onmouseover
https://www.w3schools.com/js/js_events_examples.asp

Ответы30532

5 Кб, 395x219
2 фев, 05:43 298 1130532

>>1130530
Блять, ты нихуя не понял
У меня и так листенер с mouseover
Который делает програмный клик

Мне нужно, чтоыб это ебаный програмный клик после наведения мышки не детектился вторым листенером

Ответы30534

2 фев, 05:43 299 1130533

>>1130529
Ну ты в логику умеешь? Пытался думать вообще? Если тебе надо некликая, но от наведения, может стоит подумать, как будет наведение мыши по английски и посмотреть есть ли что-то похожее?

Дегенераты блядь

Ответы30545

2 фев, 05:44 300 1130534

>>1130532
>не детектился вторым листенером
Сука, ну стаьв флаг в первом листенере и сбрасывай во втором. Ты че дебил какой?

88 Кб, 781x614
2 фев, 06:11 301 1130537

Поздравляю жаваскриптеры, я думал что хуже быть не может, но теперь нашлись те, кто платит за настройку бля дев енвайронмента.
а вы продолжайте пилить по 10 вебпаков в день.

Ответы3053831130

2 фев, 06:15 302 1130538

>>1130537
Иди в пизду с такими открытиями.
Уже давно есть ВЕБПАКОИНЖЕНЕРЫ, которые нехило поднимают баблишко на продаже книг "тонкости настройки вебпака" и на разъездах по соответствующим тематическим конфочкам.

2 фев, 06:36 303 1130545

>>1130533
>Ну ты в логику умеешь? Пытался думать вообще? Если тебе надо некликая, но от наведения, может стоит подумать, как будет наведение мыши по английски и посмотреть есть ли что-то похожее?

Да гуглил я все, целый день блять гуглю
НИхуя не помогает
Поясни уже прямо

Ответы30557

17 Кб, 627x243
2 фев, 07:11 304 1130552

>>1130528

Ответы3055530559

2 фев, 07:15 305 1130555

>>1130552
>>1130528
Но вообще это ты говном занимаешься. Если у тебя должна быть разная логика от наведения и от клика, то разнеси ее в разные сущности. Сам подумай, зачем ты триггеришь клики из наведения. У тебя количество функций в языке ограничено или что.

2 фев, 07:20 306 1130557

>>1130545
>целый день блять гуглю
А достаточно было просто открыть консоль, и посмотреть чем различаются твои объекты e, в зависимости от того, программно сделан клик или инициализирован пользователем.

Ответы30560

2 фев, 07:23 307 1130559

>>1130552
Хоспаде, анон, спасибо
Я вариации и с таргетом и трастедом с самого анчала чекал, но нихуя не работало, а щас заработала, нужно было песочницу просто полностью перезапустить

Пиздец, столько времени зря проебал

Ответы30564

2 фев, 07:24 308 1130560

>>1130557
>А достаточно было просто открыть консоль, и посмотреть чем различаются твои объекты e, в зависимости от того, программно сделан клик или инициализирован пользователем.

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

Ответы30561

2 фев, 07:29 309 1130561

>>1130560
>надеяться на реалтайм обновление песочницы
Ну ты чё бро. Ну тё чё вообще?

2 фев, 07:35 310 1130564

>>1130559
имей ввиду что istrusted не поддерживается в ie так как надо. чтобы было как надо, там вместо this.click надо генерировать событие через createevent. короче погуглишь.

Ответы30576

2 фев, 08:06 311 1130576

>>1130564
> там вместо this.click надо генерировать событие через createevent. короче погуглишь.

Я пробовал и по старому и через MouseEvent(). Без проверки трастеда тоже самое получается, обычный клик, который детектится вторым листенером

Ответы30581

2 фев, 08:26 312 1130581

>>1130576
>Я пробовал и по старому и через MouseEvent(). Без проверки трастеда тоже самое получается, обычный клик, который детектится вторым листенером

А, туплю, ты имеешь ввиду, что в ie, если сгенерирвоать через mouseevent, проверка трастеда сработает правильно, а если просто через click(), то по пизде пойдет?
Тогда оставлю
Хотя если ебаться с кроссбраузерностью, надо и с scrollintoview че то делать вроде как

Ответы30596

44 Кб, 1016x299
2 фев, 09:50 313 1130596

>>1130581
Да.

Ответы31973

64 Кб, 761x551
3 фев, 09:08 314 1131130

>>1130537
свежее

3 фев, 18:07 315 1131502

Есть ли какой-то универсальный способ одним махом решить проблему с числами с плавающей точкой? Или единственный способ - каждый раз в каждом отдельном случае округлять?

Ответы31507

3 фев, 18:08 316 1131503

Забугорные братья, видимо, отдыхают. Поэтому спрашиваю у вас, анончики.
Вот мой вопрос –
https://stackoverflow.com/questions/48596032/jsdoc-can-i-put-a-description-of-the-functions-at-the-beginning-of-the-file

3 фев, 18:11 317 1131507

>>1131502
Какая проблема у тебя еще?
То, как работает JS с числами, не какое-то нестандартное поведение. Это общепринятый стандарт IEEE. И применяется не только лишь в js. Надо просто работать в соотвествии с ним.

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

Ответы31530

3 фев, 18:24 318 1131530

>>1131507
Одно значение, вычисляемое двумя разными способами, не совпадает по меньшему разряду.

Ответы3197632022

16 Кб, 350x350
3 фев, 20:59 319 1131624

Мне внезапно пришла в голову гениальнейшая мысль: почему бы вместо компонентов/функций не создавать исключительно фабрики компонентов/функций?
То есть обычно мы пишем как-то так:
[code]
import * as React from 'react';
export class FooComponent extends React.Component ...
[/code]

В итоге каждая библиотека импортирует свою версию зависимостей, node_modules раздувается, билд толстеет. Тряска дерева и прочие оптимизации не могут полностью устранить эту проблему.

Но если импортировать только нужные интерфейсы, а сами компоненты объявлять как
[code]
export function fooComponentFactory(React: ReactType) ...
[/code]
, то лишних зависимостей не будет.

Почему такая древняя как спринг практика еще не пришла в жсмирок?

3 фев, 23:58 320 1131770

У меня есть 2 папки: client и server. В каждой по проекту на ноде.
Вопрос - как называется такое разделение? Тобишь клиент общается с серверому меня это происходит через вебпак(и какие инструменты используются в ноде что бы "выдавать" клиент наружу?)
И знаю есть такой подход, когда и сервер и клиент в одном проекте, тобишь экспресс выплёвывает скомпилированный фронт и так же содерджит в себе бэкенд.

Ответы3197831980

91 Кб, 1464x742
4 фев, 04:56 321 1131864

Аноны, нужна помощь!
Короче хотел вернуть не только "кофе готов", но и время через которое будет готово, и вдруг решил поставить ретурн перед сеттаймаутом и вот что получил! Это можно как счетчик где-нибудь использовать вместо методов статических функций?
Почему так получается?
И можете подсказать что по коду? Что лучше изменить?

Ответы32001

7,1 Мб, webm,
640x360, 1:06
4 фев, 05:59 322 1131871

Анончики, какой самый адекватный способ задетектить использование iframe?

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

4 фев, 12:42 323 1131968

>>1130459
Потому что иначе можно словить cannot read property 'yoba' of undefined, если где-то цепочка прерывается

Ответы32023

4 фев, 12:46 324 1131973

>>1130596
Пиздец какой шрифт размытый. Это линукс что ли?

4 фев, 12:51 325 1131976

>>1131530
Округляй педофиляй
В жс кроме флоата с двойной точностью нет никаких иных представлений чисел. Может и есть какие-нибудь сахарницы для имитации других типов, но они все будут сводиться ровно к тому же: к округлению флоатов, только в красивой обёртке.
Ну или считать через wasm на каких-нибудь сяхплюсплюс. Но я не думаю, что у тебя там настолько рокет саенс, чтоб запариваться с ним.

4 фев, 13:00 326 1131978

>>1131770
В таком порядке:
https://developer.mozilla.org/en-US/docs/Learn/Server-side/First_steps/Introduction
https://developer.mozilla.org/en-US/docs/Learn/Server-side/First_steps/Client-Server_overview
https://www.youtube.com/watch?v=o8L4vINWpaA
https://www.youtube.com/watch?v=Q-BpqyOT3a8
https://www.youtube.com/watch?v=eB9Fq9I5ocs

Ответы32067

4 фев, 13:03 327 1131980

>>1131770
Ну, клиент-серверное и называется. Ну или разделение на фронтенд и бэкенд
А дальше ты что-то всё в кашу смешал. Клиент не общается с сервером через вебпак. Вебпак собирает бандл из твоих исходников, который экспресс потом раздаёт в качестве статики. А общается клиент с серваком скорее всего через rest.

Ответы32067

4 фев, 13:26 328 1132001

>>1131864
https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout
Возвращает произвольный идентификатор таймера. Он не обязан быть счётчиком, только уникальным каждый раз. Считай, тебе повезло конкретно в этот момент на этой платформе. Полагаться на такое конечно же нельзя.

Почему у тебя отступ с 6 по 20 строку? У тебя дивный внутренний мир? Чувство прекрасного? Или просто копипастишь на-отвали? Зачем копипастишь? Ты учишься копипастить или писать?

Ответы32120

4 фев, 13:54 329 1132022

>>1131530
use toFixed, luke

4 фев, 13:55 330 1132023

>>1131968
try catch

4 фев, 14:56 331 1132067

>>1131978
>>1131980
Ох, перечитал свой пост и понял, что объяснил как даунпростите.
Ест-но я знаю рест/круд апи и тд. Вопрос был в другом, относяшийся к строению клиент-серверных приложений именно на ноде.
Допустим, есть фронт на реакте и бэк с экспрессом и базой.
Ведь есть выбор:
- через разделение, тобишь фронт будет где то хоститься и обращатся к работающей апишке бэка. В моём случае этим занимался пакет webpack-dev-server, который все запросы на свой же домен перенаправлял уже на мой бэкенд сервис
- всё хранить в одном, как единое целое node app - там и фронт и бэк. Тобишь указывать экспрессу в какой папке находится статика(в нашем случае это скомпилированный фронт) и на какой порт выплёвывать + в нём же есть и работает апи.

Как такое разделение в рамках ноды называется? И какими инструментами лучше всего на ноде хостить фронт, который с бэкендом не связан никак?

Ответы32155

4 фев, 16:31 332 1132120

>>1132001
Отступы? Что не так? Весь код с учебника переписал сам, за отступами вообще не следил, не пытался организовать как-то код

4 фев, 16:47 333 1132136

В prototype по умолчанию всегда находится свойство constructor, указывающее на функцию-конструктор. В частности, Rabbit.prototype.constructor == Rabbit. Если мы рассчитываем использовать это свойство, то при замене prototype через Object.create нужно его явно сохранить:

Rabbit.prototype = Object.create(Animal.prototype);
Rabbit.prototype.constructor = Rabbit;
Зачем делать вторую строчку? Почему он так не понимает? Потому что удаляется конструктор при присваивании?

Ответы32168

4 фев, 17:17 334 1132155

>>1132067
Судя по тому, что ты не можешь вопрос сформулировать, ничего ты не знаешь. Ссылочки всё таки посмотри.

Тебя интересует дизайн распределённых систем? Это тебе не сюда, мы тут массив на Реакте отсортировать не можем. На досуге почитаешь:
https://www.hiredintech.com/classrooms/system-design/lesson/52

Попробуй без упоминания фреймворков формулировать вопрос, который не касается кишков этих модных фреймворков.

Попробуй написать сервер на ванильной Ноде, require("http") чтоб он крутился на локалхосте,
по одному запросу "GET /" отдавал index.html (никакого Реакта, хипстер) из fs.readFile() из своей папки,
по клику по кнопке в index.html делай "GET /numbers" и пусть Нода отдаёт сгенерированный динамически JSON с массивом случайных номеров, который отобразится на странице без перезагрузки.
По любому другому запросу возвращает 404 и строку запроса в html.
https://www.w3schools.com/nodejs/nodejs_http.asp

Утомись от возни с мелочами, посмотри на готовый Express, на то, какую структуру проекта и дополнительные модули он предлагает через генератор:
http://expressjs.com/en/starter/generator.html

Он настаивает на движке шаблонов (Pug) для представлений и собственном роутинге. Пока обойдёмся без этого.
Начни делать Экспресс с нуля, подглядывая в генерированный.
Тебе будет надо для начала отдавать только статику, public/index.html
http://expressjs.com/en/starter/static-files.html
Папка public может называться так же client \ assets \ static \ files. Смысл её от этого не поменяется, это папка с готовыми файлами, а не с динамически-генерируемыми, отдаются они "как есть".
Теперь добавь роутинг к Экспрессу, тот самый с динамическим массивом случайных чисел. Тебе пригодится та самая папка routes из генератора.

Теперь задеплой это всё в Нау:
https://zeit.co/download
Помедитируй на вкладку Нетворк в девтулазах Хрома.

Теперь посмотри из чего сделано то самое модное webpack-dev-server, которое затуманило твоё восприятие и даже не позволяло сформулировать вопрос:
https://github.com/webpack/webpack-dev-server/blob/master/package.json
Это всего лишь Экспресс-статик над кэшем Вебпака на локалхосте.

4 фев, 17:17 334 1132155

>>1132067
Судя по тому, что ты не можешь вопрос сформулировать, ничего ты не знаешь. Ссылочки всё таки посмотри.

Тебя интересует дизайн распределённых систем? Это тебе не сюда, мы тут массив на Реакте отсортировать не можем. На досуге почитаешь:
https://www.hiredintech.com/classrooms/system-design/lesson/52

Попробуй без упоминания фреймворков формулировать вопрос, который не касается кишков этих модных фреймворков.

Попробуй написать сервер на ванильной Ноде, require("http") чтоб он крутился на локалхосте,
по одному запросу "GET /" отдавал index.html (никакого Реакта, хипстер) из fs.readFile() из своей папки,
по клику по кнопке в index.html делай "GET /numbers" и пусть Нода отдаёт сгенерированный динамически JSON с массивом случайных номеров, который отобразится на странице без перезагрузки.
По любому другому запросу возвращает 404 и строку запроса в html.
https://www.w3schools.com/nodejs/nodejs_http.asp

Утомись от возни с мелочами, посмотри на готовый Express, на то, какую структуру проекта и дополнительные модули он предлагает через генератор:
http://expressjs.com/en/starter/generator.html

Он настаивает на движке шаблонов (Pug) для представлений и собственном роутинге. Пока обойдёмся без этого.
Начни делать Экспресс с нуля, подглядывая в генерированный.
Тебе будет надо для начала отдавать только статику, public/index.html
http://expressjs.com/en/starter/static-files.html
Папка public может называться так же client \ assets \ static \ files. Смысл её от этого не поменяется, это папка с готовыми файлами, а не с динамически-генерируемыми, отдаются они "как есть".
Теперь добавь роутинг к Экспрессу, тот самый с динамическим массивом случайных чисел. Тебе пригодится та самая папка routes из генератора.

Теперь задеплой это всё в Нау:
https://zeit.co/download
Помедитируй на вкладку Нетворк в девтулазах Хрома.

Теперь посмотри из чего сделано то самое модное webpack-dev-server, которое затуманило твоё восприятие и даже не позволяло сформулировать вопрос:
https://github.com/webpack/webpack-dev-server/blob/master/package.json
Это всего лишь Экспресс-статик над кэшем Вебпака на локалхосте.

Показать весь текст
Ответы32163

4 фев, 17:27 335 1132163

>>1132155
Ещё хорошую ссылку забыл, можно было даже пост не писать:
https://github.com/devSchacht/translations/blob/master/node-hero/full_book.md

4 фев, 17:33 336 1132168

>>1132136
В js есть только объекты. Больше ничего.
Есть еще примитивы, но их можно тоже рассматривать в качестве синглтон объектов, потому как они боксятся, а сделаны разумеется для производительности. (тем более что сейчас ничего не мешает у примитивных добавить в цепочку прототипов прокси объект, отлавливащий сообщения, типа присваивания, и реалиховать поведение прототипов как полноценных объектов, но это ни к чему. проще воспринимать их как синглтоны. когда надо, любой примитив можно обернуть в полноценный независимый объект).

Так. Короче только объекты.
Все объекты делятся на callable и non-callable. Callable это функции, в понимании большинства. Но по факту это все те же объекты, со всеми свойствами что и у других.

Все объекты могут принимать всего несколько типов сообщений - get, set и call. При чем call может принимать только callable объект. при попытке послать call сообщение не-callable объекту будет исключение.

Сообщение get содержит один параметр, сообщение set два. Сообщение call параметром содержит кортеж аргументов, а так контекст this.

Если в объекте (а так же в цепочке прототипов) не назначены слушатели для get и set с определенными параметрами, ищутся слоты с такими именами в объекте и по цепочке. Если находится возвращается то, что в них лежит. Если в них лежит callable объект и ему посылают сообщние call сразу как получили его из слота, то у него будет перегружен контекст (this) на объект из чьего слота его получили. Если только этот объект не был сконструирован стрелочным синтаксисом, иначе контекст перегрузить нельзя. Если после получение callable объекта из слота его сразу не вызвать, а например положить ссылку на него в переменную, то контекст будет сброшен на тот, который был установлен у него в момент его создания (и это не обязательно будет тот же объект из чьего слота его получили).

У callable объектов есть scope (область видимости) и контекст (this) в момент посылки им сообщения call (вызова). scope средствами языка перегрузить нельзя, но некоторые окружения позволяют (например в ноде есть модеуль vm), this перегружается у callable объектов сконструированных не-стрелочным синтаксисом

Классов нет. Есть конструкторы. Любой конструктор принимает новый созданный объект, которому выставлен определенный прототип (другой объект). Оператор instanceof (someObject instanceof SomeClassName) проверяет лишь есть ли в цепочке прототипов у someObject объект который лежит у SomeClassConstructor в слоте с именем prototype. На сам конструктор ему поебать. Чтобы сменить класс, достаточно сменить цепочку прототипов. Даже если объект был сконструированным определенным конструктором.

Так же у объектов есть параметр ограничения доступа, контролирующие его расширяемость или изменяемость (sealed, extensible, frozen). У слотов объекта есть параметры configurable, enumerable, writable. Параметры слотов объекта не влияют на объекты, что в них лежат. Они лишь контролируют доступ к самим слотам.

Все. Никаких классов. Никаких интерфейсов. Как отдельных сущностей. По факту все есть объект и все строит из них.
наследование реализуется выстраиванием цепочки прототипов. Инкапсуляция только на уровне scope'в (читай замыканий).
В остальном все меняется и все динамично, если только специально все не зафризить в момент конструирования. Но обычно этим никто не заморачивается по причине оверхеда и бессмысленности. Разве только фанатики по иммутабельности, н это все из разряда те, кому надо чтобы им по рукам бил компилятор\рантайм\дядя петя. Все "привычные" понятия тянуться в язык для еще более простого вкатывания тех, кто приходит из других языков. Так уж сложилось, что есть куча литературы по привычному, статически классовому ООП, но очень мало по мессадж-пассинг\прототайп-базед\мета-программинг. Все эти притянутые понятия выливают в синтаксический сахар, который не делает ничего полезного, а даже наоборот, еще больше вносит путаницы и от того непонимамания многих вещей в языке. При этом часто этот синтаксический сахар дэже урезан и вспомнинают об этом лишь после (как например проебались с полями в конструкции class и тянут ее теперь только в proposol'ах будущих версий).

JS истинно объектный язык. В современный язык притащили много вкусных вещей для метапрограммирования. Нову примитивную сущность Symbol, и Proxy-объекты. С помощью которых можно еще больше и сильнее перегружать и менять поведение в динамике.

Другое дело, что почти никто не умеет этим пользоваться и не понимает, что такое объектное программирование на самом деле.
Им нужно не объектное, а статически типизированное. А какие именно структуры будут скрываться за этими типами, не собо важно. Важно что это просто структуры и функции, строго привязанные к ним, или иногда менее строго. То, что в Java\C++ это больше структурное программирование, нежели объектное. Объектное программирование не может существовать без динамической среды. Это противоречит самому понятию объекта. А динамическое программирование это слишком сложна и непанятна. И как бы не старались с пеной у рта фанатики кричать про низкий порог входа - низкий он именно что для входа, а не для всего остального. Модификация программ в рантайме всегда было уделом креативно мыслящих людей. Для большинства это слишком сложный уровень высокой абстракции.

4 фев, 17:33 336 1132168

>>1132136
В js есть только объекты. Больше ничего.
Есть еще примитивы, но их можно тоже рассматривать в качестве синглтон объектов, потому как они боксятся, а сделаны разумеется для производительности. (тем более что сейчас ничего не мешает у примитивных добавить в цепочку прототипов прокси объект, отлавливащий сообщения, типа присваивания, и реалиховать поведение прототипов как полноценных объектов, но это ни к чему. проще воспринимать их как синглтоны. когда надо, любой примитив можно обернуть в полноценный независимый объект).

Так. Короче только объекты.
Все объекты делятся на callable и non-callable. Callable это функции, в понимании большинства. Но по факту это все те же объекты, со всеми свойствами что и у других.

Все объекты могут принимать всего несколько типов сообщений - get, set и call. При чем call может принимать только callable объект. при попытке послать call сообщение не-callable объекту будет исключение.

Сообщение get содержит один параметр, сообщение set два. Сообщение call параметром содержит кортеж аргументов, а так контекст this.

Если в объекте (а так же в цепочке прототипов) не назначены слушатели для get и set с определенными параметрами, ищутся слоты с такими именами в объекте и по цепочке. Если находится возвращается то, что в них лежит. Если в них лежит callable объект и ему посылают сообщние call сразу как получили его из слота, то у него будет перегружен контекст (this) на объект из чьего слота его получили. Если только этот объект не был сконструирован стрелочным синтаксисом, иначе контекст перегрузить нельзя. Если после получение callable объекта из слота его сразу не вызвать, а например положить ссылку на него в переменную, то контекст будет сброшен на тот, который был установлен у него в момент его создания (и это не обязательно будет тот же объект из чьего слота его получили).

У callable объектов есть scope (область видимости) и контекст (this) в момент посылки им сообщения call (вызова). scope средствами языка перегрузить нельзя, но некоторые окружения позволяют (например в ноде есть модеуль vm), this перегружается у callable объектов сконструированных не-стрелочным синтаксисом

Классов нет. Есть конструкторы. Любой конструктор принимает новый созданный объект, которому выставлен определенный прототип (другой объект). Оператор instanceof (someObject instanceof SomeClassName) проверяет лишь есть ли в цепочке прототипов у someObject объект который лежит у SomeClassConstructor в слоте с именем prototype. На сам конструктор ему поебать. Чтобы сменить класс, достаточно сменить цепочку прототипов. Даже если объект был сконструированным определенным конструктором.

Так же у объектов есть параметр ограничения доступа, контролирующие его расширяемость или изменяемость (sealed, extensible, frozen). У слотов объекта есть параметры configurable, enumerable, writable. Параметры слотов объекта не влияют на объекты, что в них лежат. Они лишь контролируют доступ к самим слотам.

Все. Никаких классов. Никаких интерфейсов. Как отдельных сущностей. По факту все есть объект и все строит из них.
наследование реализуется выстраиванием цепочки прототипов. Инкапсуляция только на уровне scope'в (читай замыканий).
В остальном все меняется и все динамично, если только специально все не зафризить в момент конструирования. Но обычно этим никто не заморачивается по причине оверхеда и бессмысленности. Разве только фанатики по иммутабельности, н это все из разряда те, кому надо чтобы им по рукам бил компилятор\рантайм\дядя петя. Все "привычные" понятия тянуться в язык для еще более простого вкатывания тех, кто приходит из других языков. Так уж сложилось, что есть куча литературы по привычному, статически классовому ООП, но очень мало по мессадж-пассинг\прототайп-базед\мета-программинг. Все эти притянутые понятия выливают в синтаксический сахар, который не делает ничего полезного, а даже наоборот, еще больше вносит путаницы и от того непонимамания многих вещей в языке. При этом часто этот синтаксический сахар дэже урезан и вспомнинают об этом лишь после (как например проебались с полями в конструкции class и тянут ее теперь только в proposol'ах будущих версий).

JS истинно объектный язык. В современный язык притащили много вкусных вещей для метапрограммирования. Нову примитивную сущность Symbol, и Proxy-объекты. С помощью которых можно еще больше и сильнее перегружать и менять поведение в динамике.

Другое дело, что почти никто не умеет этим пользоваться и не понимает, что такое объектное программирование на самом деле.
Им нужно не объектное, а статически типизированное. А какие именно структуры будут скрываться за этими типами, не собо важно. Важно что это просто структуры и функции, строго привязанные к ним, или иногда менее строго. То, что в Java\C++ это больше структурное программирование, нежели объектное. Объектное программирование не может существовать без динамической среды. Это противоречит самому понятию объекта. А динамическое программирование это слишком сложна и непанятна. И как бы не старались с пеной у рта фанатики кричать про низкий порог входа - низкий он именно что для входа, а не для всего остального. Модификация программ в рантайме всегда было уделом креативно мыслящих людей. Для большинства это слишком сложный уровень высокой абстракции.

Показать весь текст
Ответы3240332535325463255032561325633257032619

512 Кб, 754x835
4 фев, 19:50 337 1132247

А если я совсем совсем новичек, учусь по https://learn.javascript.ru/ и пику, не погоните ссаными тряпками? Можно будет глупые вопросы задавать?

Ответы32250

4 фев, 19:53 338 1132250

>>1132247
Здесь других и не задают

35 Кб, 1184x366
4 фев, 20:05 339 1132257

Ответы32259323333254933864

4 фев, 20:11 340 1132259

>>1132257
Джаваскриптеры - муравьи?

Ответы32335

4 фев, 21:58 341 1132333

>>1132257
Похоже на кривую обучения.

Ответы32335

4 фев, 22:03 342 1132335

>>1132259
>>1132333

140 Кб, 1010x1010
4 фев, 23:32 343 1132403

>>1132168
Спасибо, очень подробно объяснил.
Подскажи, что нужно сдлеать чтобы понимать JS на таком уровне?

Ответы325533256032567

75 Кб, 1197x541
5 фев, 03:02 344 1132535

>>1132168
Спасибо большое, анон
Подскажешь ещё одну вещь?
Что тут за CP? Это методы сайта?

Ответы32562

5 фев, 04:25 345 1132546

>>1132168
> И как бы не старались с пеной у рта фанатики кричать про низкий порог входа - низкий он именно что для входа, а не для всего остального
Согласен с тобой. Я пробовал и плюсы и пхп и даже ассемблер, но тяжелее всего мне со скриптом

Ответы32564

5 фев, 04:31 346 1132549

>>1132257
Пиздец, посмотрел на код современного Jquery охуел от того что понял только 10%. Зачем так жить пацаны? Вы вообще понимаете что там происходит?
Я вот например исходники Quake на 99% понимаю. А тут какая-то жопа прям.

5 фев, 04:35 347 1132550

>>1132168
>Сообщение get содержит один параметр, сообщение set два
А почему сет два?
Слушай, анон, можешь телегу оставить или что-нибудь? Очень хотелось бы

Ответы325513255932569

5 фев, 04:38 348 1132551

>>1132550
https://t.me/jsthread

5 фев, 05:34 349 1132553

>>1132403
мимопроходил
Читать умные книжки. Можешь начать с You Don't Know JS. В подробностях рассказывает всё, начиная с особенностей типизации и замыканий, и заканчивая сутью прототипного делегирования и тем, почему класс-ориентированный подход в ЖС говно.
Местами автор продвигает свой подход к построению кода (некий OLOO), к которому лично у меня много вопросов. Но это при желании можно проигнорить, а вот про устройство языка узнаешь очень многое.

Ну и другие тоже почитывай. Ту же классику от Крокфорда и секреты жабаскрипт ниндзя.

Если прямо вообще хочешь постичь дзен, то можно спеки ECMAScript читать.

5 фев, 06:14 350 1132558

Антоны, помогите напутствием.

В общем, сейчас я что-то вроде полу-фронтенда. То есть, в основном ковыряюсь с js, верстаю гораздо меньше. И дело вот в чём. Мне нравится заниматься бизнес-логикой, пилить алгоритмы, короче решать задачи, где надо думать логически (сейчас занимаюсь игрой на phaser, и там постоянно нужно колдовать над игровой механикой). И со всеми странности жс я смиряюсь и в целом есть желание в нём развиваться. Но как только дело доходит до вёрстки, то я просто БЛЬООООО как это говно впадлу делать. Я ещё в универе заебался быть псевдодизайнером для всяких студсоветов, и сейчас к подобному вообще нет желания прикасаться. А фронтенд такая штука, что в большинстве проектов процентов 50 работы - это как раз вёрстка, это мне просто с проектом сейчас повезло, что я мало её касаюсь.

Ну так вот я и думаю. Может в бэкенд перекатиться? Или на фронте всё не так плохо, как мне кажется, и просто надо поискать получше в случае чего?

Ответы32571

5 фев, 06:19 351 1132559

>>1132550
>А почему сет два?
Имя слота и его новое значение

5 фев, 06:27 352 1132560

>>1132403
>нужно сдлеать чтобы понимать JS на таком уровне
Просто изучить все существующие концепции языков языков. Понять принципы. И желательно изучить\понимать зачем эти концепции\абстракции вообще нужны. Расширять кругозор. Для этого надо иметь интерес ко всему этому. Нельзя закрывать себя в абстракциях одного языка, парадигмы и методологий. Помимо объектной концепции есть еще различные подходы к самой архитектуре. Например в JS - это событийно-ориентированное программирование, поняв которое, можно больше не воспринимать асинхронность как какую-то тяготу. И вообще понять, что это не касается только JS, а касается масс областей.

5 фев, 06:31 353 1132561

>>1132168
> scope средствами языка перегрузить нельзя
Здесь немного неверно. Перегрузить можно, если предусмотреть такую перегрузку. С помощью eval.

5 фев, 06:34 354 1132562

>>1132535
Да, это фича CodePen для возможности терминатить бесконечные циклы.

5 фев, 06:35 355 1132563

>>1132168
> Proxy-объекты
Одна из самых мощных и в то же время недооцененных фич языка, наряду с Reflect'ом.

Ответы32566

5 фев, 06:40 356 1132564

>>1132546
И на плюсах и на асме можно в динамическое программирование. Просто оно на другом уровне. На уровне выделения исполненяемой памяти, генерации машинного кода и вот это все. В 2018 этим мало кто увлечен. Но когда-то было иначе.

Сложнее тебе в JS не из-за концепций метапрограммирования, ты можешь их и не использовать. А лишь потому что ты привык к тому, что верификацию твоего кода в большей степени берет на себя компилятор\ide (если брать асм, то там слишком низкие абстракции и все программирование сводится к жонглированию машинными словами. стрелять себе в ногу в нем не сложнее чем в динамических языках, ибо он сам куда более динамический. просто ввиду низких абстракций, ты понимаешь что когда происходит более легко ).

Программирование - это способность реактивно менять абстракции смотря на те или иные вещи.

5 фев, 06:42 357 1132566

>>1132563
Ну, Reflect просто вынесенные методы из Object по большей степени. Для структурирования API. А прокси да, вместе с метасимволами. Но все же не хватает еще нескольких видов сообщений или символов, для перегрузки некоторых вещей (операторов). Их не вводят сразу, потому что это сильно влияет на производительность.

5 фев, 06:52 358 1132567

>>1132403
>нужно сдлеать чтобы понимать
Пытаться материализовать все узнаное\прочитаное.

Лучший способ понять JS, например кмк, это нарисовать себе граф всей объектной системы. Чтобы буквально на пальцах понимать, что как и куда, с чем свзяано, что дергается когда вызывается. А еще лучше закодить его интерактивное представление, чтобы по нему можно было гулять (по нему и так можно гулять, в консольке, но вкатывальщикам это не интуитивно).

Что до книжек - не знаю. Я не прочел ни одной книги по какому-то отдельному языку за все 15 лет, что увлечен программированием, если не считай Кернингана и Ритчи. Я обычно читаю какую-то концептуальную литературу\статьи и спеки. Чтобы понять взгляды на те или иные вещи разных людей. Полезно вообще прочесть того же Таненбаума, по архитектурам пекарен и приницпах ОС. Интересно читать интервью\статьи Алана Кея. Любопытно Раскина (но это не столько по программированию), если смотреть в прошлое. Просто всего по немногу но везде. Повышать, так сказать эрудицию. А потом сам выберешь основное направление. Да и при решении вопросов будет хватать лишь гугла, потому что сможешь эти вопросы формулировать.

JS мне достаточно было прочесть спеку.
У нее даже есть переводы, если читать на английском сложно.
В ней написано все еще подробнее, что как и куда дергается, когда и почему.

Ответы32576

5 фев, 07:00 359 1132569

>>1132550
>можешь телегу
телега sdfcasd

5 фев, 07:06 360 1132570

>>1132168
Алсо, что хотелось бы добавить. Как я считаю, JS проще бы понимался, если бы в нем использовалось REPL-driven-development, по принципу лиспов или smalltalk-систем. Не важно, на сонове образов или нет. В принципе, это не слишком сложно реализовать, если написать IDE под в учетом этого подхода. Суть его в том, что ты не пишешь код в файлах, а динамически создаешь объекты, выстраиваешь их связи и вот это все, в интерактивном режиме. Грубо говоря более лучшие devtools, которые по итогу компилируют проект в файловое представление. В девтулсах можно изъебнуться чтобы этго достичь, но это не удобно. Они все же не были созданы для разработки, а лишь для отладки.

5 фев, 07:17 361 1132571

>>1132558
На фронте так или иначе ты будешь связан с версткой. Потому как не верстка это уже никакая лет 10 как, а UI. Будь ты прикладным программистом, твоя боль выглядела примерно как - ребят мне нравится писать приложухи, но как дело доходит до интерфейса это бооооль.

Откуда нам-то знать, лучше тебе в бэкенд или не лучше. Можешь в бэкенд. Можешь в системщину. Можешь в машин-лернинг. Есть масса областей где нет программирования графических интерфейсов. Но API ты все-равно будешь должен проектировать и создавать.

Ответы32588

5 фев, 07:41 362 1132576

>>1132567
Еще о книжках.
Нельзя никогда воспринимать авторов как авторитетов. Надо помнить, что это лишь их субъективные взгляды. Потому что книги не излагают формальных аспектов в отличии от спецификаций, например.

Как пример, есть такой человек как Столяров. У него много годных книжек по программированию. Но ввиду того, что он зажат в концепция системного программирования и мыслит лишь ими, зачастую его опусы наполнены такой лютой чепухой параллельно с полезным материалом. А он при этом еще и педагог. И это печально.

Короче говоря, читать надо писателей, не воспринимая все за чистую монету. А лишь полагаясь на их высказывания и мысли. Чем больше вы будете пытаться с ними поспорить, тем сильнее углубитесь во все и дойдете до собственных пониманий.

Поэтому ни к чему читать что-то об отдельных языках. Языки лишь инструменты, которые отражают определенные концепции. А этих концепций очень большое множество (на самом деле не столько большое, но ввиду их различных комбинаций, оно получается). По самим языкам самое полезное это спеки и справочники. В книгах же много воды, чаще субъективной.

5 фев, 08:43 363 1132588

>>1132571
Вот к апи как раз у меня побольше симпатии. В вёрстке дико бесит вся эта кроссбраузерность, когда к тебе приходят из Министерства обосранных штанов Российской федерации, и говорят что хотят себе портал для госзакупок с поддержкой ie8+. Если бы не эта долбёжка, и было бы там как с полифиллами в жс, то может и отношение бы другое было.

Энивей, спасибо за мысли.

Ответы32591

5 фев, 08:54 364 1132591

>>1132588
Ну смотри. Если бы ты писал гуй не в вебе, а стэндэлон - там еще больший зоопарк с тулкитами. так что разницы никакой. В этом плане спека веба - даже самый универсальный и кроссплатформенный тулкит из всех существующих.

Просто тебе не нравится программировать гуй. Ну выбери ту сферу, где гуя нет. А что с поддержкой легаси (как в твоем пример ie8), так на то оно и легаси, что встречается во всех сферах. ну поставят тебе задачу взаимодействовать с каким нибудь древним сервером\сервисом по давно мертвому протоколу на том же бэкенде. Будешь так же плеваться, а делать придется. От этого не уйти.

5 фев, 09:31 365 1132619

>>1132168
В начале был Объект, и Объект был у Джаваскрипта и Объект был джаваскрипт.

Ответы32627

5 фев, 09:35 366 1132627

>>1132619
Вообще-то это концепция пошла из smalltalk'а. JS сильно урезанная его версия с си-подобным синтаксисом. В js не хватает эсктремально позднего связывания и первоклассных выражений (когда любое выражение, это тоже объект).

Ну, а еще нельзя перегрузить цепочку прототипов у всех объектов разом, прокси-объектом, чтобы отлавливать сообщения вид idontunderstand.

Ответы3263332648

5 фев, 09:43 367 1132633

>>1132627
Точнее сильно урезанная версия self'а, потомка smalltalk

5 фев, 10:00 368 1132648

>>1132627
Щас бы экстремально позднее связывание и перегузку цепочки прототипов юзать в языке, который даже кусок кода не может из другого файла заинклюдить без надстроек. И с помощью этого компьютер-сайнс буллщита писать фишинговые формы на клоакинговых лендингах, кекус максимус.

Ответы32653

5 фев, 10:04 369 1132653

>>1132648
В языках с экстремально поздним связыванием и развитой системой метапрограммирвания, вообще не должно быть таких понятий как файлы и инклюды. У тебя синдром утенка.

Ответы32657

5 фев, 10:13 370 1132657

>>1132653
Нет, это у тебя синдром утёнка. У тебя что, до сих пор 80-е на дворе и ты работаешь в НИИ?

Ответы32659

5 фев, 10:16 371 1132659

>>1132657
Про то, что есть вещи опережающее свое время ты не слышал? Все развитие идет по пути повышения абстракционных моделей, а ты как раз стоишь на месте.

Ответы32663

5 фев, 10:20 372 1132663

>>1132659
Слышь, ты, повышение абстракционной модели в лиспе и смалталке, сиди в НИИ и не гунди, у нас тут давно рыночек всё порешал. Копеечный даун на жквери нужнее умного очкарика-ботана с степенью в компьютер сайнсе и матане. Потому что даун на жквери getting things done, причём быстро, дёшево, и макаку можно заменить за пять минут. Поставил слайдер с куриными жопками по скидке - лавешка потекла. И где и кому там твой смолтолк? Да нигде и никому. Пустые коридоры застывших в 80-х НИИ, по которым ты ходишь, всё ещё думая, что живой.

Ответы32665

5 фев, 10:24 373 1132665

>>1132663
>у нас тут давно рыночек всё порешал
Ну с тобой всё ясно.

Ответы32667

36 Кб, 422x195
5 фев, 10:32 374 1132667

>>1132665
Хочешь ты этого или нет, сопротивляешься этому или нет, но факт остаётся фактом. Смолтолк упоминается в 1 вакансии во всей стране. И то, придётся уехать на Урал к геологам. Смолтолк мёртв, так же как и сотни других языков двадцатого века.

А попытка в треде по самому хайповому и хипстерскому языку для дошколят доказать, что кому-то там нужна какая-то плохо понятная хуйня из доисторических языков выдаёт в тебе не очень умного дурачка, хотя ты, я уверен, о себе обратного мнения. Совершенно напрасно, спешу тебя расстроить. Умный потому и умный, что понимает, что его требования и желания касательно устройства мира, рынка и человечества никого кроме его самого не ебут, лол.

Ответы326683266933592

5 фев, 10:37 375 1132668

>>1132667
про дошколят жиза. научил младшего брата(16 лвл) кодить за пол года. за декабрь и январь он уже больше 1к$ нафармил. при этом еще как-то в пту ходит. тру стори не я троль

5 фев, 10:37 376 1132669

>>1132667
Ты несешь какую-то чушь. Придумал себе какую-то позицию за меня и с ней споришь. Ты пытаешься мне сейчас доказать, что выучить язык и его объектную систему проще, если изучать ее к верху каком? ты идиот? Все сложности у вкатывальщиков, все эти ррррряя и боль, именно потому что они не понимают сути, концепции языка и объектной системы. Почитай треды. Все вопросы однотипы и все вытекают лишь из того, что люди пытаются переложить парадигмы одного языка на другой, даже не на язык, а на объектную модель.

Твои доводы о рыночке и вакансиях - это вообще тут при чем? Есть множество более оплачиваемых профессий нежели программирование - выкатывайся в них нахуй, мамкин зарабатывальщик. Ты не допускаешь такой мысли, что программирование может приносить удовольствие, нет?

Ответы32672

5 фев, 10:41 377 1132672

>>1132669
именно потому что они не понимают сути, концепции языка и объектной системы

Именно потому, что они не понимают перегрузки цепочки прототипов и позднего связывания? Я просто ору с тебя. Вопросы в этих тредах исходят из людей, которые пишут код первый раз в жизни, и непонимание глубинных механизмов работы прототипов вообще тут не при чём. Им бы понять, чем синхронный код от асинхронного отличается, чтобы форму в пхп-скрипт отправить. Они не понимают HTTP и концепцию Request-Response, о каких перегрузках ты говоришь?

5 фев, 10:52 378 1132681

байтоебы лезут в жс, памахите!

Ответы327123271432749

5 фев, 11:30 379 1132712

>>1132681
Будто что-то плохое. Не байтоёбы должны помереть от рака анальной джопы. Ибо заебало когда открываешь какой-нибудь сайт, а там по 15 фрэймворков, всё тупит как будто крузис запустил, и сжирает это всё 7 гиг оперативки. Сраные говнокодеры блядь.

5 фев, 11:34 380 1132714

>>1132681
Байтоебствую на JS в буквальном смысле этого слова, насколько это возможно, используя язык там, где другие сказали "НИПАНАЗНАЧЕНИЮ" - патчинг бинарных файлов, разбор цифровых промышленных протоколов "на лету" в качестве софтверных гейтов, полное покрытие функционала HMI/SCADA.
Где твой Босх теперь?

Ответы32724

5 фев, 11:40 381 1132722

Господа, порикамендуйте что почитать вкатывальщику по SPA.

5 фев, 11:42 382 1132724

>>1132714
>Байтоебствую на JS в буквальном смысле этого слова, насколько это возможно, используя язык там, где другие сказали "НИПАНАЗНАЧЕНИЮ" - патчинг бинарных файлов, разбор цифровых промышленных протоколов "на лету" в качестве софтверных гейтов, полное покрытие функционала HMI/SCADA.

Но зачем, если теперь есть wasm и можно сишечку емскриптеном компелять?

Ответы3274932942

5 фев, 12:27 383 1132749

>>1132681
>>1132724
Вас после node.js ещё что-то удивляет, лол.

5 фев, 16:51 384 1132942

>>1132724
и что, что он есть. Если бы ты писал на том и другом, то знал бы, что сейчас зачастую мономорфный js код намного быстрее жонглирует байтами, нежели wasm.

Ответы3294333062

5 фев, 16:53 385 1132943

>>1132942
> мономорфный js код намного быстрее жонглирует байтами, нежели wasm.
Толстота умноженная на 900000000000000000000000000

5 фев, 19:26 386 1133062

>>1132942
да нахуй нужна эта экономия на спичках если все равно будет все тормозить из за сраного ДОМа

Ответы33083

106 Кб, 886x1200
5 фев, 19:42 387 1133069

Аноны, дошел до графических компонентов, то есть Кантор уже все, хочу написать пару вещиц на чистом JS, но меня сбила глава "Графические компоненты", я не понял калькулятор с туду листом надо писать в ООП или как? Если нет, то в каких случаях ООП вообще нужен? Спасибо.

P.S если не берем в расчет React, что мне изучать еще?

5 фев, 19:53 388 1133083

>>1133062
Маня. Не во всех операциях учавствует твой ДОМ.

Ответы33084

5 фев, 19:56 389 1133084

>>1133083
иди на хуй. все остальные хуйня

6 фев, 01:04 390 1133253

Все никак не врублюсь на каких методах из жизненного цикла можно вызывать setState?

6 фев, 11:46 391 1133374

Как распарсить дату на ваниле такого формата '06/02/18 Втр 11:11:11'?

Ответы33375

6 фев, 11:54 392 1133375

>>1133374
split

Ответы33377

6 фев, 11:57 393 1133377

>>1133375
А как потом из этого собрать валидную дату для date.parse?

Ответы3337933399

6 фев, 12:00 394 1133379

>>1133377
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Date/parse

6 фев, 13:02 395 1133399

>>1133377
Про date.parse ты знаешь, а как строки строить -
нет?

Ответы33400

6 фев, 13:03 396 1133400

>>1133399
Уже написал небольшую функцию, раcплитил на цифры разные и отдал в Date().

99 Кб, 822x681
6 фев, 17:46 397 1133568

это за январь. челику 16 лет, жс-джун место действия ВНЕЗАПНО кишинев
ваши оправдания борщееды

Ответы33596

6 фев, 18:21 398 1133592

>>1132667
>Смолтолк мёртв
Не мертв он, просто макак на такие должности не берут.

Ответы3364233659

6 фев, 18:33 399 1133596

>>1133568
700$
40 000 рублей.
>деньги
Нормальный разработчик интерфейсов даже жопу от стула не оторвет за эту сумму. Пусть школьник набирается опыта, может вырастет в что-нибудь нормальное.

Ответы33611

6 фев, 19:04 400 1133611

>>1133596
у них там 17ти летние шлюхи баксов 20 стоят

6 фев, 19:50 401 1133642

>>1133592
Как дела в НИИ? Новую версию Фортрана завезли уже

6 фев, 20:35 402 1133659

>>1133592
Каково общаться с объектами?

6 фев, 20:59 403 1133676

Посоны, помогите.
Уже полтора года макакю во фротнэнде, последние пол года клепаю формочки на реакте+редаксе.
Проблема в том, что чувствую, как я отупел - SICP совершенно не могу читать, просто понимаю нихуя и задачи решать не могу.
Чувствую, что скоро стану совсем ненужным макакеном и пошлют из профессии нахуй.
Что делать блять?

Ответы3369733704338313385033863

6 фев, 21:21 404 1133697

>>1133676
А тем временем в книготред новые учебники подвезли. Начал бы с них, а там и до бэк-енда добрался...

6 фев, 21:29 405 1133704

>>1133676
Я на курсере курсы прохожу чтоб не тупеть

97 Кб, 645x729
7 фев, 02:09 406 1133831

>>1133676
>клепаю формочки
Это как?

7 фев, 07:45 407 1133850

>>1133676
> чтоб не тупеть.
Очевидный Дональд Кнут. Читай про алгоритмы.
Проверять насколько ты тупой можно на любой из платформ вроде codeforces / hackerrank

7 фев, 09:43 408 1133863

>>1133676
Матешей займись. Базарю, просветляет. Вместо игорей вечером на часик захожу, зависимость есть.
https://www.khanacademy.org/math
Или МООКи какие проходи
https://github.com/ossu/computer-science
С этого стоит начать:
https://www.coursera.org/learn/learning-how-to-learn

Сон, еда, активность, общение, эмоции. Витаминки, глицин, пирацетам, циннаризин, к врачу сходи.

159 Кб, 1184x366
7 фев, 09:47 409 1133864

>>1132257

7 фев, 10:47 410 1133888

Пизда вашему JS настала.

https://blogs.msdn.microsoft.com/webdev/2018/02/06/blazor-experimental-project/

Ответы33902339063391133917

7 фев, 10:51 411 1133894

читаю сейчас про ngrx - ебать крутая тема походу!!!
буду сейчас перепиливать свой экстеншон для хрома на это дело. хочет кто-нибудь за компанию по скайпу?

Ответы33898

7 фев, 10:59 412 1133898

>>1133894
>перепиливать свой экстеншон для хрома
А ты умеешь? Как там это делать всё? Сложно? Какой язык (JS тред но вдруг...)? Ну и вообще какие подводные камни? Всегда интересовался этим.

7 фев, 11:06 413 1133902

>>1133888
Ага. А еще Линукс скоро убьет винду.

7 фев, 11:09 414 1133906

>>1133888
> NET to WASM
> no XAML-to-HTML bridge
Ух, епт. Реально опасная штука.

7 фев, 11:12 415 1133911

>>1133888
Серьёзно боюсь за индустрию, когда вот это воспринимают как серьёзный ответ ЖиСусу. Нет бы просто написать альтернативу без ебанутого синтаксиса, нормальной типизацией и без ебучего поглощения тонн оперативной памяти. Нет, написали такое говно, что проще в жопу ебаться чем даже просто поставить его...

7 фев, 11:20 416 1133917

>>1133888
на самом деле годно. я всю жизнь завидовал сисярпирам и с радостью пополнил бы их ряды забыв карьеру жс кодера как страшный сон. может к старости моей запилят и я как раз вкачусь

Ответы33920

7 фев, 11:28 417 1133920

>>1133917
Перекатился с сисярписта на JS. Хотя по сути что та хуйня, что это хуйня, и ебал я её маму в рот.

Ответы33921

7 фев, 11:30 418 1133921

>>1133920
Зато у тебя был божественный LINQue и не менее православная возможность ваять код на F решеточка и исполнять его на той же платформе.
Боженьки, как я завидую шарпейчикам на NET.

Ответы339253392633932

7 фев, 11:33 419 1133925

>>1133921
>Зато у тебя был божественный LINQue
Как по мне - костыль ебаный для криворуких ленивых даунов.
>возможность ваять код на F решеточка
Бесполезное говно. На деле буквально в 2015 он перестал быть концепцией. А до этого он банально мог вообще ни во что. Не считая проприетарщины.

7 фев, 11:34 420 1133926

>>1133921
Вот чего угодно ожидал, но чтобы линк хвалили, ещё и на программаче? Ты траллируешь чтоли?

7 фев, 11:46 421 1133932

>>1133921
>божественный LINQ
Ничто не мешает прикрутить анологичное к js.

Но у вас же тут рррряяя метапрограммирование нинужно

Ответы33934

7 фев, 11:51 422 1133934

>>1133932
Ты в курсе что кофе есть?

Ответы33935

7 фев, 11:53 423 1133935

>>1133934
При чем тут кофе? Метапрограммирование от трансляции не отличаешь?

Ответы33936

7 фев, 11:54 424 1133936

>>1133935
Вообще одинаковым говном считаю что то, что это.

Ответы33937

7 фев, 11:56 425 1133937

>>1133936
Ну и дурак.

Ответы33939

7 фев, 11:58 426 1133939

>>1133937
>2018
>фанатеть от кофе
Окей.

Ответы33942

7 фев, 12:03 427 1133942

>>1133939
Ты не просто дурак, ты вовсе идиот.
Я писал про метапрораммирование, а кофе притащил сюда свой ты. И сравнил жопу с пальцем.

Ответы33950

7 фев, 12:15 428 1133950

>>1133942
Не вижу никакой принципиальной разницы, что та полужохлая хуйня для даунов, что эта. Причём просто за упоминание линка на западе например могут просто сразу на работу не взять. Ибо кусок говна. Почитай западные бложики и отношение ко всему этому в целом. А ты хочешь ещё что-то к Джарвису прикрутить...

7 фев, 14:38 429 1134075

Не нашел треда веб-макак. Вроде где-то был.

Я хочу сделать сайт, где были бы просто восхитительные формы. Самые разные. Для заданий. Мол стоит вопрос какой-то, а у тебя ниже формы для ответа. Самые разные. Иногда нужно писать в поле ответ, иногда выбирать, иногда перетаскивать. Чем это организовать дабы попроще было?

Ответы3408134094

7 фев, 14:43 430 1134081

>>1134075
Сам пишу такое. Ну и сделал уже то о чём ты говоришь.
PHP+ Mysql+Jquery+CSS+HTML.
Как-то так. Сам конструктор вопросов естественно - JQuery. Ну а выбор стилей форм берёт инфу из БД. Хотя это по моему очевидное архитектурное решение. Так что я думаю что я не совсем точно ответил на твой вопрос и ты ожидал другово ответа.

Ответы3408234122

7 фев, 14:46 431 1134082

>>1134081
Что ты пишешь?

Ответы34096

7 фев, 14:51 432 1134094

>>1134075
>восхитительные формы.
Vue

Ответы34097

7 фев, 14:53 433 1134096

>>1134082
Система тестирования же.

7 фев, 14:54 434 1134097

>>1134094
А причём тут vue если в итоге ты будешь дёргать CSS, а там вообще похуй чем?

Ответы34103

7 фев, 15:00 435 1134103

>>1134097
То, что сложные условные формы и интерактив надо делать на фреймворках в общем и на вуе в частности.

Ответы34110

7 фев, 15:04 436 1134110

>>1134103
>Сделать форму с 4 чекбоксами
>Сделать форму с 4 радиобоксами
>Сделать форму с инпутом
> сложные условные формы и интерактив надо делать на фреймворках в общем и на вуе в частности.
Мне кажется почему-то, что можно и без фрэймворков. хз, может я ошибаюсь конечно. Не проверял (Тоесть проверил и создал уже, ну да ладно.)

Ответы34114

7 фев, 15:07 437 1134114

>>1134110
Если так, то тогда в чём был вообще вопрос, в чём восхитительность?

Ответы34119

7 фев, 15:10 438 1134119

>>1134114
Не ну может он хочет иметь несколько вагин и 1 дилдо который нужно засунуть в определённую напротив правильного ответа. Думаю это было бы восхитительно.

Ответы34121

79 Кб, 1024x576
7 фев, 15:10 439 1134121

>>1134119
Ваш дизайн восхитителен.

7 фев, 15:11 440 1134122

>>1134081
Алсо, сам конструктор на жквери. Я боюсь представить, какое у тебя там говно под капотом. Жквери только для селекторов нужен, что-то на полном серьёзе писать на нём - это надо быть ёбнутым на всю голову. Дали им реактивность и высокопроисходительный патчинг дом, нет, не хотим, хотим лапшу из жквери.

Ответы34124

7 фев, 15:15 441 1134124

>>1134122
Так мне надо аякс и дёргать дивы.
>какое у тебя там говно под капотом.
Около 20 строк кода.

7 фев, 15:31 442 1134129

>Мам мне надо формочку склепать
>4 чекбокса, 4 рабообокса
>Вот тебе реактивность и высокопроисходительный патчинг дом, и похуй что к задаче не имеет отношения, зато я такие слова знаю.

Ответы34147

7 фев, 16:02 443 1134145

Аноны, поясните вкрации за node.js и за его философию. Я попытался вкатиться и охуел, потому что в php ты просто формировал выдачу, а теперь мне еще надо и сервер настроить.

Ответы34146

7 фев, 16:04 444 1134146

>>1134145
Даунам было лень выучить 10 PHP комант.
Хуяк хуяк и они сделали node.js Это всё что надо знать о node.js

Ответы3414934150

7 фев, 16:05 445 1134147

>>1134129
Ты насмехаешься над тем, что человеку порекомендовали использовать профессиональные инструменты, но даже не удосужился предположить, что человек этот, возможно, сподобится сделать не просто 4 чекбокса и 4 "рабообокса", а фабрику чекбоксов и "рабообоксов".
Нет необходимости заниматься рутинной деятельностью, когда можно автоматизировать решение задачи.

Ответы34151

7 фев, 16:07 446 1134149

>>1134146
>Даунам было лень выучить 10 PHP комант.
Но ведь даунам не завезли в пыхе асинхронность из коробки.
Да и событийною модель дауны не могли реализовать при помощи одного пхп.

Ответы341553447134525

7 фев, 16:07 447 1134150

>>1134146
php-only решения сасут. К примеру, рендер картинок.

Ответы341543415834160

7 фев, 16:08 448 1134151

>>1134147
>фабрику чекбоксов
Тут то я и обосрался.
Ну окей. давай так. Какую задачу это решает?

Ответы34157

7 фев, 16:09 449 1134154

>>1134150
PHP прекрасно рендерит картинки

Ответы34159

7 фев, 16:09 450 1134155

>>1134149
>Но ведь даунам не завезли в пыхе асинхронность из коробки.
При том что любой, даже самопальный скрипт на js смог в асинхронность и без Node почему-то никого не смущщает. Ну ок.
>Да и событийною модель дауны не могли реализовать при помощи одного пхп.
Опять же была за 100 лет и не является заслугой node.

7 фев, 16:10 451 1134157

>>1134151
Нахуячил генератор тестов в йоумэне, например, и на выходе получил восхитительные формы, написав адаптер по вкусу и сведя к минимуму последующую кастомизацию восхитительных форм.
Неужели это не очевидно?

Ответы34161

7 фев, 16:10 452 1134158

>>1134150
>Серверсайд бэкэнд
>Рендерить картинки
Окей. Ты ещё скажи что на PHP майнить плохо. Ясен хер он не для этого сделан. Как и Node.js

Ответы34162

7 фев, 16:11 453 1134159

>>1134154
Да, если нужно нарисовать рамку. Когда тебе нужно нарисовать что-то сложнее полутора линий, то проще взять canvas

Ответы34163

7 фев, 16:11 454 1134160

>>1134150
Начнём с того, что PHP онли решений в природе не существует.

7 фев, 16:12 455 1134161

>>1134157
Всё что ты перечислил делается без фабрик от слова вообще. Даже кастомизация без фабрик делается. Чот ты походу сам не знаешь что такое фабрика.

9 Кб, 250x130
7 фев, 16:12 456 1134162

>>1134158
Сюда смотри и сам решай для чего php сделан и почему это язык №1 на вебе.
https://secure.php.net/manual/en/imagick.examples-1.php

Ответы3416534222

7 фев, 16:13 457 1134163

>>1134159
А, тоесть сначала ты говорил про рендер, а теперь выяснилось что тебе лично просто сложно. Окей. Я понял твой аргумент.

Ответы34166

7 фев, 16:14 458 1134165

>>1134162
Ну анон, это использует дай бог 1 из сотни.

Ответы34167

7 фев, 16:15 459 1134166

>>1134163
> тебе лично просто сложно
Да, лично мне сложно превращать высокоуровневые операции на канвасе в кучу низкоуровневых php операций и терять производительнсть

Ответы3416834172

7 фев, 16:15 460 1134167

>>1134165
Это используют для капчи и уменьшения аватарок

Ответы34169

7 фев, 16:17 461 1134168

>>1134166
Рендеринг то тут причём? Ты дал команду, он срендерил. А то, что у тебя руки кривые, и что ты чего-то там не смог - так это не его проблемы. Что за бред вообще.
Фотошоп рендерит плохо потому-что если нужно нарисовать рамку норм, но я рисовать не умею, поэтому фотошоп говно.

Ответы34171

7 фев, 16:19 462 1134169

>>1134167
в 2018? Я думал все переехали на гуглкапчу. Нет?

7 фев, 16:21 463 1134171

>>1134168
> ты неосилятор ряя
Если ты ни разу не работал с картинками, то мне нечем тебе помочь.

Ответы3417334175

7 фев, 16:21 464 1134172

>>1134166
И какие такие высокоуровневые операции ты производишь? Рамку нарисовать в пхп одной строчкой:
$canvas->borderImage('black', 1, 1);

Ответы3417734178

7 фев, 16:22 465 1134173

>>1134171
3 велосипеда по работе с картинками написал. Дальше что?

Ответы34178

7 фев, 16:23 466 1134175

>>1134171
Сотни раз работал с картинками, просто критика мне непонятна. Ты всё именно так и написал, что ТЫ не смог осилить. Поправь меня если я не прав.

Ответы34178

7 фев, 16:24 467 1134177

>>1134172
Какие операции двачер может делать? Наверняка ставил свой huesosov.info на каждую пикчу. Вот и всё.

7 фев, 16:26 468 1134178

>>1134175
>>1134172
>>1134173
В php приходится перебирать все пиксели изображения, в канвасе же это делалось в несколько строк. Интеграции js песочницы в php окружение еще не завезли.

Ответы34179341803418134208

7 фев, 16:27 469 1134179

>>1134178
Сам вручную перебирал?

Ответы34210

7 фев, 16:27 470 1134180

>>1134178
>перебирать все пиксели изображения
Для чего?

Ответы34210

131 Кб, 819x904
7 фев, 16:30 471 1134181

>>1134178
>В php приходится перебирать все пиксели изображения
Удивительные истории.

Ответы34210

7 фев, 17:19 472 1134208

>>1134178
Просто кое-кто мудак.

Ответы34210

7 фев, 17:21 473 1134210

>>1134208
>>1134181
>>1134179
>>1134180
Ну давайте хотя бы градиент ебаните без перебора, умники ебаные.

Ответы3421234222

59 Кб, 727x599
7 фев, 17:24 474 1134212

>>1134210

Ответы34213

3 Кб, 48x48
7 фев, 17:26 475 1134213

>>1134212
>imagick

Ответы342183422034223

7 фев, 17:32 476 1134218

>>1134213
Что тебе не нравится?

7 фев, 17:35 477 1134220

>>1134213
у js'а canvas тоже в язык не встроен, лол.
если тебе не нравится подключать расширение.
напиши библиотеку на чистом php, и не перебирай каждый раз свои пиксели.

переиспользование кода - слышал о таком?

7 фев, 17:35 478 1134222

>>1134210
Ты смешной такой. Тебя носиком тыкать надо. Вот картинка с градиентом >>1134162 . 30 Строчек кода на ее создание с нуля.

Ответы34223

7 фев, 17:36 479 1134223

>>1134222
>>1134213

Ответы34226

7 фев, 17:38 480 1134226

>>1134223
Ты дегенерат.
Тебе уже выше написали, за языко-онли решения.
JS например вообще не имеет никаких средств ввода вывода.
Ты на голом js вообще нихуя сделать не сможешь. То есть, вот вообще ничего. Ни прочитать данных, ни вывести. Понял?

Ответы34235

7 фев, 18:01 481 1134235

>>1134226
node.js

А на чём ты без АПИ сейчас что напишешь? Странный такой.

Ответы34238

7 фев, 18:10 482 1134238

>>1134235
node.js это не голый js

>А на чём ты без АПИ сейчас что напишешь? Странный такой.
Маня. Язык определяется спецификацией. Если в спеке прописаны средства ввода вывода - то они часть языка, а не api. Как например горутины в go, для многопоточности, это блядь часть языка, а не окружения.

js в отличии от php встраиваемый язык. у него очень ограниченная объектная модель по спеке, все остальное реализуется кружением.

Ответы342893429034838

7 фев, 19:43 483 1134289

>>1134238

7 фев, 19:46 484 1134290

>>1134238
Если уж занудствовать, то это Ecmascript встраиваемый без ввода-вывода, а JS это его реализация с апишечками принимающей среды (бровзера или ноды).

Ответы342923429334295

7 фев, 19:53 485 1134292

>>1134290
>бровзера или ноды
Если ты знаешь лишь два окружения, это не значит, что нет остальных.
JS встроен в фотошоп, юнити, автокад и еще в кучу ПО.

7 фев, 19:54 486 1134293

>>1134290
И апи окружения это не апи языка. и даже не его стандартная библиотека.

7 фев, 19:57 487 1134295

>>1134290
И вообще, все началось с того, что анон (если это был не ты, то вообще не ясно хули ты вписался, а если вписался, то хул не проследил нить разговора) что анон сказал. что на php нельзя в несколько строк нарисовать градиент, в отличии от js, а когда ему привели пример, ему не понравилось, что используется расширение, а не чисто стандартная либа языка. И ему поясняли что canvas api в js это такая же сторонняя библиотека, а не часть языка.

7 фев, 20:45 488 1134331

>>1123427
Если ты планируешь использовать частичное применение функции, то делай каррирование.

8 фев, 01:32 489 1134471

>>1134149
>Да и событийною модель дауны не могли реализовать при помощи одного пхп.
Какой ты соня. Тебя даже вчерашний шторм не рабзудил.

Ответы34503

8 фев, 06:15 490 1134503

>>1134471
Ваша реплика оставила ощущение легкой недосказанности. Можно ли поподробнее, что я проспал?

Ответы34504

8 фев, 06:16 491 1134504

>>1134503
Событийная модель уже организована в ларавели, на чистом PHP.

8 фев, 09:51 492 1134525

>>1134149
>не завезли в пыхе асинхронность из коробки.
Завезли, проблема в том, что только под unix, в то время как разработчики использую windows. https://secure.php.net/manual/en/book.pcntl.php

Ответы3452734529

8 фев, 09:53 493 1134527

>>1134525
Где это ты таки разработчиков видел ? В 5б?

Ответы34538

8 фев, 09:53 494 1134529

>>1134525
Зачем ты так? Теперь node.js совсем как копрофаги выглядят. Они и так за 8 лет смогли допилить только до уровня PHP 1998 года, а теперь вообще вены резать будут.

Ответы34837

64 Кб, 1032x390
8 фев, 09:55 495 1134531

я должен был сегодня с утра покодить на ангуларе 2 с @ngrx/store(RxJS powered state management for Angular applications, inspired by Redux)
но вместо этого поднял пару водных и теперь мне лень
двач мотивируй меня как-то на это говно а взамен я буду выкладывать скриншоты с комментариями в процессе деятельности(хз если ли ваще материалы на русском про этот ngrx?)
буду переписывать свою простенькую приложуху(тоже на нг2) клон oneTab. экстеншон для хрома(пикрелейтед внешний вид) который при клике закрывает все вкладки и сохраняет список закрытых вкладок(табсет) в локалсторейдж.

Ответы34533

8 фев, 09:56 496 1134533

>>1134531
>двач мотивируй меня как-то на это говно
Сможешь зарабатывать на трапов.

8 фев, 10:08 497 1134538

188 Кб, 1401x697246 Кб, 1334x807

>>1134527
Сам посмотри

Ответы34623

8 фев, 12:57 498 1134606

проигрываю этого срача между препроцессором гипертекста и скриптохуйней для браузеров

8 фев, 13:08 499 1134615

ПЛАТИНОВЫЙ ВОПРОС

вкатываюсь в этот ваш фронт, и сейчас передо мной 2 стула, на 1 - Реакт точеный, а на 2 агуляр дроченый.

В пользу реакта можно отнести его большую популярность (от чего большую вероятность найти работу), с другой стороны мой знакомый работает с ангуляром и может подсказать в случае чего.
Вопрос: на какой стул сесть самому, а на какой мать посадить?

Ответы37976

8 фев, 13:22 500 1134623

>>1134538
>Качать какое то перегруженное говно

>Когда есть божественный сублайм текст три.

8 фев, 16:58 501 1134763

Завтра иду на собеседование на позицию джуниора nodejs, сказали "будут спрашивать про жс". Что повторить, подучить, посоны? Мой первый собес, меня аж трясет всего уже.

Ответы34946

8 фев, 18:05 502 1134837

>>1134529
>Теперь node.js совсем как копрофаги выглядят
Че несешь? Асинх в ноде был из коробки.

Ответы35154

342 Кб, 474x438
8 фев, 18:07 503 1134838

>>1134238
>node.js это не голый js

8 фев, 19:44 504 1134946

>>1134763
ивент луп, промисы

http://perfectionkills.com/javascript-quiz/

Ответы3515336006

8 фев, 21:38 505 1135004

Сап двощ. Недавно начал изучать JS. Раньше создавал сайты, исходя из этого мне не совсем тягостно учить язык. Также знаком с базой с++, изучал в шараге. Так вот, хотелось бы узнать у опытных дядь в этой сфере, актуальна ли вообще такая вакансия сейчас у компаний? просто, некоторые пишут, что уже все вакансии заняты, лезть не стоит. Это дерьмо немного демотивирует и учить как-то немного теряет смысл, но немного, ибо, насколько знаю, если выучить один из языков, то в любом другом можно разобраться быстрее

Ответы35013

8 фев, 21:57 506 1135013

>>1135004
как ты и подобные тебе дауны мыслят? вот ты пишешь
>некоторые пишут, что уже все вакансии заняты, лезть не стоит
а я тебе отвечу: все вакансии свободны, лезть стоит. ты мне поверишь? или другому анониму? мы что не некоторые, а какие-то особенные?
бля просто сру тебе в рот хуйло. съеби отсюда, не нервируй меня.

9 фев, 06:21 507 1135153

>>1134946
> http://perfectionkills.com/javascript-quiz/
Ты этот говнотест сам проходил или просто решил скинуть ссылку, дабы затмить неокрепший разум неофита?
Претензия, конечно, больше не к тебе, а к автору сего теста. В частности, вопрос под номером 9:
var x = 1;
if (function f(){}) {x += typeof f;}
x;

Правильный ответ: "1function", ибо выражение внутри проверки условий if'а вернет truthy value. С этим согласен и дебаггер хрома.
Однако сайт такой вариант ответа засчитывает как ошибочный.

Ответы35168351723520635319

9 фев, 06:23 508 1135154

>>1134837
С такими ебанутыми проблемами и 2018 году, этот асинк можно только в анус себе засунуть, и перейти на вообще что угодно кроме ноды. Даже на велосипед.

9 фев, 08:21 509 1135168

>>1135153
Там в комментариях всё обсудили и даже развёрнутый ответ был.
В любом случае, конкретно для собеседования такой тест нинужен (разве что про хоистинг и this после присвоения другому объекту узнать, если не знал ранее). А если что-то такое спрашивают, нужно смело посылать нахуй и уходить.

Ответы35172

9 фев, 08:56 510 1135172

>>1135153
>>1135168
орнул. иди на хуй чмо

9 фев, 11:53 511 1135206

>>1135153
> С этим согласен и дебаггер хрома.
Кому ты пиздишь? Пустую вкладку открой about:blank и проверь, тупой мудак.

Ответы35278

9 фев, 13:00 512 1135278

>>1135206
оруууууууууу

12 Кб, 681x218
9 фев, 13:22 513 1135319

>>1135153
>Однако сайт такой вариант ответа засчитывает как ошибочный.
Всё правильно сайт засчитывает.

9 фев, 20:15 514 1135549

Тупой вопрос, но все же. Как в JavaScript правильно записывать выражения такого типа: (398 <= 200 <= 1192)?

JS выдает true, а Python выдает false.

Ответы355863559037978

9 фев, 21:42 515 1135586

>>1135549
200 >= 398 && 200 <=1192
только так, больше сахарка не завезли

9 фев, 22:03 516 1135590

>>1135549
>398 <= 200 <= 1192
>false <= 1192
>true
Все верно выдает.

10 фев, 17:18 517 1136006

>>1134946
Ответил правильно на 2 вопроса.
мимо реакт разраб

Ответы36093

10 фев, 19:23 518 1136093

>>1136006
Ехал typeof через typeof.
Хуита.

10 фев, 21:53 519 1136216

>>1125742
> Самый пиздатый редактор VSCode написан на JS целиком и полностью.
Давно у тебя тайпскрипт стал жсом?

Ответы3626137979

10 фев, 22:38 520 1136261

>>1136216
рантайм жсный, так что он по болльшому счету прав.

Ответы3628436386

9 Кб, 1080x60
10 фев, 23:23 521 1136284

>>1136261
Ну кому ты пиздишь

Ответы36292

10 фев, 23:32 522 1136292

>>1136284
Что это за скрин?

Ответы36297

10 фев, 23:34 523 1136297

>>1136292
Гитхаб

Ответы36301

10 фев, 23:38 524 1136301

>>1136297
Ну это же сырцы, они собираются галпом + tsc. Никакого тайпскрипта в рантайме нет.

Ответы3632436387

11 фев, 00:08 525 1136324

>>1136301
>Самый пиздатый редактор VSCode написан на JS целиком и полностью.
>TypeScript 91.5%
>JavaScript 4.8%
>написан на JS целиком и полностью
>в рантайме
При чём тут рантайм и то, во что преобразуется код? Котлин транслируется в джаву, но никто не говорит, что приложение, написанное на котлине, это джава.
Не надо путать понятия.

Ответы36383

11 фев, 00:13 526 1136328

Но котлин не транслируется в джаву, он только JVM использует.

А ts именно транслируется. Причем на том сайте, где можно про него почитать, так и написано - надмножество js.

Самая близкая аналогия - флоу, который тупо плагин для бабел.

Ответы36348

11 фев, 00:44 527 1136348

>>1136328
>не транслируется
Работает поверх JVM, да.
Перефразирую: код "преобразуется" в джаву, так как в декомпилированном байт-коде именно джава.

Ответы3638436403

11 фев, 01:58 528 1136383

>>1136324
>Котлин транслируется в джаву
Ты нахуя врешь, если не знаешь? Ни в какую лдаву котлин не транслируется. Он транслируется в байткод.

Ответы36403

11 фев, 01:58 529 1136384

>>1136348
>так как в декомпилированном байт-коде именно джава.
Ты дауна кусок, тебе ничто не маешает представлять декомпилированный код на чем угодно, не обязательно джавой. Байт-код это байт-код.

Ответы36403

11 фев, 02:00 530 1136386

>>1136261
Если уж на то пошло, весь рантайм написан на плюсах. Потому что рантайм, это электрон.
И кода рантайма на плюсах во всех проектах на электорне, больше чем на js\ts\и чем угодно ином.

11 фев, 02:01 531 1136387

>>1136301
То есть правильно я тебя понимаю, что программа на сишечке - на самом деле написана на машинных кодах, по-твоему?

Ответы36403

11 фев, 02:46 532 1136403

>>1136383
>>1136384
this >>1136348
Дауна кусок здесь только ты, это было в качестве примера.
>на чем угодно
Ну давай, декомпильни мне jar в c#.

>>1136387
Единственный анон, который понял суть дела.

11 фев, 09:52 533 1136438

Анчоусы, да чо вы усираетесь, ну видите же, что он ебанутый. Знает о предмете поверхностно, прочитал на хуябре или ещё где 1-2 статьи и воображает из себя йоба пограмиста. Будьте мудрее, не ебите себе мозги. Он и сам с собой не против поспорить, не лишайте его такой прекрасной возможности.

21 Кб, 654x236
11 фев, 14:19 534 1136545

Последние ответы были не мои. Моя идея была в том, что тс - не самостоятельный ЯП, а надстройка над жс.

Ответы36680

11 фев, 16:40 535 1136680

>>1136545
Что в твоем понимании самостоятельный ЯП?
Ты понимаешь, что ЯП не имеет такой характеристики как самостоятельность?
Это лишь форма записи. Ты можешь транслировать любой ЯП во что угодно. Ты можешь JS трансилировать в машкод, если очень хочешь. Просто напиши такой транслятор. ТО же самое с TS. Тебе ничто не мешает написать транслятор в другой язык. Ровно как не мешает написать интерпретатор непосредственно TS.

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

Ответы36704

11 фев, 16:56 536 1136704

>>1136680
Хорошо. Лексика у жс и у тс практически идентична, семантика тоже, как и синтаксис. Практически - 99% конструкций, доступных в тс, доступны и жс. Впрочем, это зависит от того, как будет настроен компилятор этого тс.

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

Ответы3670936711

11 фев, 16:59 537 1136709

>>1136704
Но тогда и C++ это не самостоятельный язык, мань, а лишь надмножество над C. А Си это надмножетсво асма.

Ответы36713

11 фев, 17:01 538 1136711

>>1136704
>Практически - 99% конструкций, доступных в тс, доступны и жс
Еще раз говорю, ты ничего не понимаешь в языках. Любые абстракции языка более высокого уровня, моно выразить на языке более низкого уровня.

Ответы36716

11 фев, 17:03 539 1136713

>>1136709
Где ты видел объекты в C?
Или где ты видел такие же абстракции от инструкций в асме?

Суть в том, что в них нет практически никакой разницы ни в наборах реализуемых парадигм, ни в способах их реализации.

11 фев, 17:04 540 1136716

>>1136711
Но они не отличаются уровнями абстракции

11 фев, 21:59 541 1137000

Зачем нужно ставить gulp-cli глобально, а gulp локально, судя по инструкции на https://gulpjs.com/ ?

Ответы37294

12 фев, 07:53 542 1137294

>>1137000
Глобально для того, чтоб можно было из командной строки просто писать gulp build например, локальная установка при этом не нужна, только gulpfile.js в целевой папке.
В глобальной установке ничего плохого нет, но могут быть проблемки. От неё лучше отказаться.
Стоит стремиться к тому, чтоб твоему коллеге набрать npm i или npm start и всё работало.

Если ты установишь Галп локально, то в node_modules/gulp/bin/gulp.js ты увидишь всего одну строку
require('gulp-cli')()
Галп-кли уже установлен локально. Ты можешь запускать его
node_modules/gulp/bin/gulp.js build
Слишком длинно, можно лучше. Тебе надо прописать одну дурную строку в скрипты package.json
{... "scripts": {"gulp": "gulp"} ...}
Это позволит запускать Галп через npm run и сделать что-то типа
{... "scripts": {
"gulp": "gulp",
"prestart": "npm install && npm run gulp build",
"start": "node index.js"
}...}
и ещё много чего полезного.
Теперь твой пакет не загрязняет глобальную область, не требует прав, стартует локально из коробки.

12 фев, 21:35 543 1137806

Для js кода есть инструмент для визуализации вызовов в виде диаграммы?

13 фев, 07:01 544 1137976

>>1134615
Ангуляр более корпоративный. Строгий синтакс. Тайпскрипт (считай джаваскрипт с типизацией) сразу будешь писать на том, что у JS макак еще не скоро появится. (Вроде декораторов).
Реакт - более молодежный, хипстерский. Код пишется на ES6 и богомерзком JSX. Работы дохуя. Я бы выбрал реакт.

Ответы39129

13 фев, 07:05 545 1137978

>>1135549
Сравнил нормальный язык программирования и скриптопарашу.
Я иногда пишу на Python для себя, при виде конструкций.
(x, y, z) > (f, g, s) вместо
x > f && y > g && z > s, слезы макакьи наворачиваются на глазах блядь.

13 фев, 07:11 546 1137979

>>1136216
> Называет говноподелие от мелкомягких языком.
> Надмножество JS.
Давайте и реакт с JSXом назовем языком, хули уж там. TS и JS одного поля дерьмо, что бы эти петушки с псевдотипизацией не говорили.

15 фев, 07:51 547 1139129

>>1137976
Реакт уже давно серьезный бизнес, а не хипстеры. Ну и проще и прозрачнее в разы.

15 фев, 14:20 548 1139304

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

Ответы39396

15 фев, 16:47 549 1139396

>>1139304
На жсфиддл залей

16 фев, 12:31 550 1140132

почему ви не перекатываете трде?

18 фев, 19:40 551 1141603

123

18 фев, 19:44 552 1141604

Такая тема, только начал вкатываться, написал короткую строку кода, все работает: alert("Hello world!");

Но.. Текстовый редактор выдает ошибку: ESLint завершил исполнение с ошибкой: [object Object]

Пишу в редакторе Brackets. Кто-то сталкивался с такой хуйней? Что оно блять означает? И ведь все работает, но само уведомление меня раздражает, так как что-то не в порядке

Тред утонул или удален.
Это копия, сохраненная 21 марта 2018 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

« /pr/В начало тредаВеб-версияНастройки

/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.gq, m2ch.cf, m2ch.fapp.in, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion