Главная Настройка Mobile Контакты NSFW Каталог Пожертвования Купить пасскод Pics Adult Pics API Архив Реквест доски Каталог стикеров Реклама
Доски


[Ответить в тред] Ответить в тред

Check this out!


<<
[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 551 | 62 | 170

JavaScript #94 Аноним 20/01/18 Суб 21:09:00  1123037  
15134503266860.png (9Кб, 1052x1052)
days.png (676Кб, 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/ для серверного кода.
Аноним 20/01/18 Суб 21:12:35  1123043
Вложил в этот перекат весь свой опыт перекатов. На правах ОПа задам ебанутый вопрос.

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

КАК. ЭТО. ВОЗМОЖНО.
Аноним 20/01/18 Суб 21:48:56  1123063
>>1123043
Вопрос снимается. Я невнимательный ебач.
Аноним 20/01/18 Суб 21:49:35  1123064
>>1123063
/thread
Аноним 21/01/18 Вск 00:08:40  1123123
>>1123043
Надеюсь такая беспомощная херня как ты не разрабатывает интерфейс в аэропортах на которых я буду летать. Ну что за пиздец!
Аноним 21/01/18 Вск 01:26:29  1123143
>>1123043
И какова разгадка?
Аноним 21/01/18 Вск 02:40:25  1123151
6491692images14[...].jpg (29Кб, 250x346)
Что скажете по поводу пикрил JavaScript. Карманный справочник. Дэвид Флэнаган? Годнота ли для связки с Кантором? В том смысле, как книга, которую можно читать в транспорте, заучивать теорию без воды и всякое-всякое. Собираюсь приобрести, как вкатывальщик. Кантор даёт хорошие знания, но достаточно ли этого? Закрепляю знания теорией с ютуба Sorax и практикой по написанию дичи var huy = 5; alert("huy");. Ещё даже основы JS Кантора не прошёл, поэтому и спрашиваю у вас. Есть ли смысл брать данную книжечку, почитать когда еду с учёбы, на парах философии, на толчке и так далее. О "Подробном руководстве" так же прошу высказаться, если есть возможность. Информация устарела возможно, никто не поспорит с этим, но там ведь излагается тот фундамент, без которого вообще никуда? Глянул электронный вариант книги, вроде всё просто и легко излагается, без лишнего, с таблицами и теорией. Охватывают даже связь JS с HTML и CSS, а весь синтаксис описывается из спецификации ECMAScript 5. То есть чтобы действительно закрепить пройденное. Ещё небольшая, как для книг по программированию, цена. Дискасс на эту тему. С меня как всегда нихуя и два чая.
Аноним 21/01/18 Вск 06:40:11  1123162
>>1123151
Бесполезная покупка. Это справочник. Его не надо читать, к нему надо обращаться с конкретным вопросом. Искать что-то в устаревшей книге не лучшая идея, если ты не в горном ауле. Обращаться ты всё равно будешь в Гугл.
Читай пока Кунотора, лучше английскую актуальную версию. Открой для себя
https://developer.mozilla.org/en-US/
https://stackoverflow.com/
То есть, прочитал что-то у Кантора, и тут же поискал это на этих ресурсах дополнительно, воспроизвёл примеры, побился об подводные камни.

А читать промеж делом это бестолково. У тебя только иллюзия осведомлённости будет, на следующий день ничего не вспомнишь. Подпишись тогда на агрегатор типа
http://javascriptweekly.com/
и читай всё подряд. Хотя бы хайповые базворды знать будешь.
Аноним 21/01/18 Вск 10:39:37  1123192
обрез.png (8114Кб, 1920x1080)
Решение верно находит пары, но при получении огромных массивов, не хватает времени.
Как можно ускорить выполнение?
Аноним 21/01/18 Вск 12:20:52  1123215
Screenshot from[...].png (52Кб, 745x454)
>>1123192
Есть хороший алгоритм для таких вещей, нужно отсортировать массив. Установить два указателя на начало и конец и в зависимости от суммы элементов смещать их. Вот пикрелейтед я тебе накидал, это работает быстрее чем твое O(n^2) решение. Единственное по условию твоей задачи нужно только первое совпадение вывести. Причем самое левое в оригинальном массиве. Если значения уникальные, то можно после нахождения возможных значений воспользоваться indexOf и взять наименьшие индексы. Если элементы могут повторятся - я хуй знает как эту задачу решать.
Аноним 21/01/18 Вск 12:32:32  1123218
>>1123215
У этого вроде ассимптотическая O(2 * n);
Аноним 21/01/18 Вск 13:04:49  1123226
>>1123162
Спасибо. Примерно это и хотел узнать, есть ли смысл. Пока продолжу читать Кантора и брать ещё информацию из предоставленных тобой сайтов.
Аноним 21/01/18 Вск 13:07:22  1123227
https://vimeo.com/111122950
Аноним 21/01/18 Вск 13:17:28  1123230
Захотелось написать маленькое приложение под винду для себя, которое бы взаимодействовало с файловой системой (только чтение), electronjs для этих целей норм, или есть что-то получше?
Аноним 21/01/18 Вск 13:32:25  1123232
>>1123230
> electronjs
Очень удобно, под себя.
Аноним 21/01/18 Вск 13:48:55  1123241
>>1123230
Я бы выбрал лучше jscript или jscript.net, и по хуй, что технология древняя. Мало жрет ресурсов, работает на всем парке начиная с ХР.
Аноним 21/01/18 Вск 14:13:48  1123250
Возможно ли применение TDD в верстке под вордпресс или нет?
Аноним 21/01/18 Вск 15:06:21  1123274
>>1123250
Тебя в гугле забанили? google://tdd wordpress
Аноним 21/01/18 Вск 15:30:58  1123299
image.png (59Кб, 734x663)
почему в js такое уебищное ооп, пытаюсь разобраться со всем этим говном и просто пиздец

__proto__, prototype, constructor - как понять эту ебанутую хуйню?
Аноним 21/01/18 Вск 15:38:51  1123307
>>1123299
Никак, привыкай-страдай
Аноним 21/01/18 Вск 15:42:03  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

Интересует мнение экспертов, чё не так, что можно улучшить и оптимизровать.
Аноним 21/01/18 Вск 15:42:59  1123314
>>1123274
я сказал верстку под вордпресс, а не плагины с phpunit под вордпресс.
Аноним 21/01/18 Вск 16:16:12  1123354
>>1123314
Козлик ёбаный, ты разницу между вёрсткой и разработкой знаешь? TDD — test driven development, никак с версткой не связан.
Аноним 21/01/18 Вск 16:18:01  1123359
>>1123354
фронтенд - это и есть разработка!!!
Аноним 21/01/18 Вск 16:18:12  1123360
>>1123354
Я чет тоже охуел, думаю ребята уже разметку тестируют. WAT
Аноним 21/01/18 Вск 16:18:41  1123361
>>1123359
Если модульная сборка, импортируешь модуль в файл с тестами и там тестируешь.
Аноним 21/01/18 Вск 16:19:35  1123363
>>1123359
А, понятно, спешите видеть, у нас тут хтмл5 разработчик, со знанием цсс.
Аноним 21/01/18 Вск 16:21:59  1123369
>>1123230
Нет, не норм.
Все равно, что из пушки по воробьям.
Electron или NW для больших приложений. Это блядь целый браузер.
Для маленьких приложений можно написать расширение для браузера, chrome app, или сервис на той же ноде или go, который будет отрисовывать ui в уже установленном браузере. Нахуя вы для мелких утилит используете то, что для них не предназначено.
Аноним 21/01/18 Вск 16:23:33  1123371
>>1123299
Если тебе что-то не понятно - это не значит, что это что-то уебищно.
Аноним 21/01/18 Вск 16:24:35  1123372
>>1123299
Достаточно понять как выглядит объектная система. Представить граф объектов. Нарисуй.
Аноним 21/01/18 Вск 16:32:13  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/01/18 Вск 17:12:29  1123427
Привет скриптач, хочу _все_ функции писать каррированными:
[code]
const (a) => (b) => a + b
[/code]
Вместо:
[code]
const (a, b) => a + b
[/code]

Какие подводные камни? Заметил, что во многих воннаби функциональных JS-проектах функции не всегда пишутся каррированными, почему?
Аноним 21/01/18 Вск 17:15:35  1123433
>>1123427
Сам как думаешь?
Не видишь что расход памяти пропорционально растет? На каждую функцию помимо самой функции создается лексическая область видимость.
В твоих примерах вместо одного объекта функции и одной lexical scope у тебя четыре объекта в памяти.
Аноним 21/01/18 Вск 17:23:24  1123446
>>1123427
>const (a, b) => a + b
это быстрее
Аноним 21/01/18 Вск 17:37:19  1123470
Screen Shot 201[...].png (33Кб, 842x158)
Очень жаль. Но как же тогда мне стать функциональным господином в JS?
Аноним 21/01/18 Вск 17:54:46  1123494
>>1123470
Бери и становись. Жоэс вообще, и ФП стиль в жс не для числодробилок.
Аноним 21/01/18 Вск 17:55:42  1123496
>>1123494
Нечислодробилки с его подходом будут еще медленнее.
Аноним 21/01/18 Вск 18:54:35  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]
Аноним 21/01/18 Вск 19:00:23  1123601
>>1123596
А движки по твоему не на канвасе рисуют что ли.
Без них ты должен делать тоже самое, что с ними.
Рисовать, очищать, рисовать.
Аноним 21/01/18 Вск 19:02:56  1123606
>>1123601
Так ведь у меня очистка не работает, а отрисовка работает
Аноним 21/01/18 Вск 19:13:32  1123612
>>1123606
https://www.html5canvastutorials.com/advanced/html5-canvas-animation-stage/
Аноним 21/01/18 Вск 20:12:25  1123644
>>1123612
Все оказалось просто, ебучий костыльный жс забывает добавлять в память отрисованные прямоугольники без context.beginPath();
Аноним 21/01/18 Вск 20:33:05  1123661
>>1123644
> жс забывает
Ахуенно ты оправдываешь собственную тупость.
Аноним 21/01/18 Вск 20:40:47  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/01/18 Вск 21:20:38  1123698
>>1123661
По документации clearRect чистит канвас вне зависимости от того, что там кем отрисовано, а на деле без beginPath ничего не происходит
Аноним 21/01/18 Вск 21:29:10  1123711
image.png (79Кб, 890x814)
>>1123698
Кому ты пиздишь
Аноним 21/01/18 Вск 22:03:42  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, если каррировать Рамдой. Просто пиздец.
Аноним 21/01/18 Вск 22:17:55  1123754
>>1123741
Потому что во всем должен быть баланс.
Когда отголоски фп не повсеместно, а местами, это еще не так страшно для производительности. Когда у тебя весь проект будет функция через функцию, вот тут ахуеешь. Но дело каждого.
Кто-то так же фанатично и ООП использует только потому что.
Аноним 21/01/18 Вск 22:25:24  1123764
>>1123741
В чем твоя проблема. Хочешь писать чисто на ФП, бери ФП языки транслирующиеся в JS. Их уже есть и много.
Аноним 21/01/18 Вск 22:33:26  1123780
Screen Shot 201[...].png (131Кб, 2026x1050)
>>1123764
Пикрелейтед. Даже если брать мелкие проекты и в одно ебало их писать, заказчик в 95% случаев пошлет тебя нахуй с твоими ФП языками, потому что зависеть от одного-единственного функционального господина бизнесу (тем более мелкому) не кайф.
Аноним 21/01/18 Вск 22:38:31  1123785
>>1123780
Тебя точно так же могут послать с твоим фундаментальным ФП подходом.
Аноним 21/01/18 Вск 22:43:56  1123799
Вкатываюсь во фронтендщика. Учу пока верстку на htmlacademy и немного охуеваю. Такое чувство, что проходить тему "Рамки и фоны", где меня учат ставить на бекграунд картинки или создавать стрелки и треугольники, просто трата времени. Но и скипнуть не могу, боюсь что потом аукнется когда буду тяжелый макет верстать. Что можно скипнуть чтобы до сентября уже в стажера хотя бы вкатиться со знанием жс и реакта.
Аноним 21/01/18 Вск 22:48:31  1123804
>>1123799
Бери макеты и верстай. Походу дела гугли, читай документацию, чтобы сверстать то или иное.
Аноним 21/01/18 Вск 22:49:38  1123805
>>1123804
Так это получается методом тыка, разве такое нормально? Не надо сначала матчасть поучить, а потом браться хотя бы с минимальным базисом?
Аноним 21/01/18 Вск 22:51:19  1123806
>>1123805
Матчасть чего. Верстки? Вся матчасть укладывается в то как пишутся теги, и css правила. Дальше читаешь по каждому отдельно, и методом тыка лучше всего.

Тебя никто не научит правильно делать треугольники, потому что нет такого понятия как правильно. Все можно реализовать сотней способов. Какой из них рациональнее ты должен понять - а не выучить.
Аноним 21/01/18 Вск 22:54:03  1123812
>>1123805
Кто тебе мешает совмещать свои курсы с методом тыка. Вот и разбавишь свою скуку, чередуя. А потом сделаешь вывод, что принесло больше профита.
Аноним 21/01/18 Вск 23:18:39  1123839
>>1123799
> учу верстку.
> вкатится со знанием жс и реакта.
Вообще никак не связанные темы. По делу - проходи ВЕСЬ Html Academy, там реально полезные интерактивные курсы. Но проходи не просто так, делай записи в тетрадку, верстай свои макеты. Не зацикливайся на этом. HTML/СSS на базовом уровне не сложный и кладется в голову за 2 недели. А вообще странный вопрос, если ты вообще нулевый придешь. Такой "я знаю реакт", а на бекграунд не сможешь картинку поставить, о чем с тобой говорить?
Аноним 21/01/18 Вск 23:19:46  1123841
Какое же говно этот ваш язык, надо было сказать нет, когда мне предложили взяться за такой проект. Как жавист, скоро буду кровью плеваться от количества разных стандартов и отсутствия нормальных ide с автокомплитом. Да, есть убогий vs code, который обертка от ноды и хрома.
Аноним 21/01/18 Вск 23:22:30  1123848
>>1123841
JS самый годный язык. А ты просто рвешься от собственной тупости.
Аноним 21/01/18 Вск 23:24:05  1123857
>>1123848
Говно для идиотов, которые не осилили типизацию, вроде тебя.
Аноним 21/01/18 Вск 23:32:39  1123884
>>1123857
Пруфай, что я ее не осилил, дегенрата ты кусок.
Аноним 21/01/18 Вск 23:33:16  1123885
>>1123857
Какая ирония судьбы! Осилил типизацию жаву, а писать приходится на js говне.
Аноним 21/01/18 Вск 23:38:41  1123897
>>1123857
>не осилили типизацию.
Осилили это наркоманское прототипное OOP, с лексическим окружением/скоупами цепочками. Слава аллаху в ES6 появилась обертка вокруг всей этой еботы. Но зато не осилили, что перед запуском функции просто декларируется тип аргумента. Ага, конечно. СЛИШКОМ СЛОЖНО.
Аноним 22/01/18 Пнд 00:10:16  1123944
>>1123857
А как из того, что ты не осилил динамику вытекает то, что кто-то не осилил статику? Ты уверен, что выбрал правильную профессию с такой логикой?
Аноним 22/01/18 Пнд 00:59:19  1123987
двачик объясни, почему тупскрипт не ругается на пик, по идее x должна вернуть массив объектов Options, а я вот возвращаю пустой массив и ему похуй
Аноним 22/01/18 Пнд 01:03:55  1123991
>>1123987
ну то есть я в теории понимаю что чекер не может определить будет ли у меня пустой или полный массив в рантайме, но тут очевидно же что пустой. Чего я недопонимаю
Аноним 22/01/18 Пнд 01:36:32  1124020
>>1123987
Это что за язык программирования вообще? Этож не ЖС?
Аноним 22/01/18 Пнд 01:40:13  1124024
>>1124020
это TS
Аноним 22/01/18 Пнд 05:34:42  1124083
>>1123841
если бы не статическая типизация, я так бы и не узнал, зачем мне ide вместо редактора
Аноним 22/01/18 Пнд 06:55:44  1124090
>>1123299
А ещё почитай как-нибудь You don't know JS. Там во всех подробностях описано, что из себя JS представляет.
Вкратце, жабаскрипт вообще не ООП в классическом понимании, его только пытаются сделать подобием такового кучка ниосиляторов, не желающих разбираться в прототипах, своеобразной работе this и прочем.
Аноним 22/01/18 Пнд 07:06:59  1124092
Я бы рекомендовал сначала попробовать Lua. Там тоже прототипы, но намного проще всё. Потом брать жс как следующую ступень, где сложнее работа с this, свойствами объектов и безальтернативная реализация прототипов.
Аноним 22/01/18 Пнд 09:48:34  1124124
Господа, есть ли что-то на горизонте из функциональщины, что могло бы компилиться в васм?
Аноним 22/01/18 Пнд 11:10:51  1124149
>>1123944
Двачую. Динамика по факту сложнее статики. В статике с тобой и компилятор нянчится, и в целом код легче для понимания - особенно если брать современные немногословные языки вроде Котлина и Свифта.
Аноним 22/01/18 Пнд 11:30:47  1124161
Как же я люблю JS
Аноним 22/01/18 Пнд 14:56:13  1124319
у меня вытекают глаза, читая нововведения в ES6.
js итак был не особо логичным и удобным языком, но его превращают в убер монстра

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

var [ first, second, third ] = f();
Аноним 22/01/18 Пнд 15:04:27  1124329
>>1124319
И что тут нелогичного, дебс? Это есть не только в js.

И да, проснись, на дворе ES8
Аноним 22/01/18 Пнд 15:07:06  1124332
>>1124319
>ES6.
>var
Аноним 22/01/18 Пнд 15:15:35  1124340
>>1124319
const {
mamku,
tvoy,
ebal,
} = pidor
Аноним 22/01/18 Пнд 16:29:00  1124376
Как правильно делать импорты?

import {MyClass} from '../MyClass'
или
const MyClass = require('../MyClass')
Аноним 22/01/18 Пнд 16:32:37  1124379
>>1124376
<srcipt src="myclass.js"></script>
Аноним 22/01/18 Пнд 16:33:14  1124380
>>1124379
Имелось ввиду в nodejs.
Аноним 22/01/18 Пнд 16:38:55  1124384
>>1124380
ну import конечно, что за идиотские вопросы.
это стандарт. и все окружения идут к реализации загрузчиков под этот синтаксис. когда в WebAPI запилят Module Loader, можно будет и в браузере использовать import
Аноним 22/01/18 Пнд 17:30:48  1124414
Нужна небольшая помощь со скриптом (расширение для хрома).
Может кто помочь?
Аноним 22/01/18 Пнд 17:41:16  1124423
>>1124414
все могут, но насколько небольшая? Ты можешь не мять сиськи и обрисовать че те надо?
Аноним 22/01/18 Пнд 17:45:45  1124427
>>1124423
Да там делов на полчаса, я бы сам сделал, но занят. Есть нативная программа на C++ для работы с 3D, надо перенести ее функционал в веб, ввиде расширения (ну это шоб, лучше интегрироваться ос, ну ты понимаешь же, да)
Аноним 22/01/18 Пнд 18:06:25  1124437
>>1124384
Там с этим серьёзные проблемы, такчто в ближайшие годы не будет на ноде импорта. Если вообще будет. Прогонять каждый раз код через бабель на ноде - зашквар.
Аноним 22/01/18 Пнд 18:15:24  1124442
>>1124423
Поправить небольшой уже готовый скрипт
Если у тебя есть телега, отпиши плс, там все обговорим

Выше про кресты писал не я
Аноним 22/01/18 Пнд 18:20:00  1124444
>>1124437
Они там уже есть.
Аноним 22/01/18 Пнд 18:24:17  1124448
>>1124442
@anonuserLE
Аноним 22/01/18 Пнд 18:39:30  1124461
>>1124437
>Прогонять каждый раз код через бабель на ноде

У тебя наверное LTS, и у меня. А у этого анона >>1124444 9-ая уже.
Аноним 22/01/18 Пнд 18:43:41  1124464
>>1124461
На 9-ке также

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

SyntaxError: Unexpected token import
Аноним 22/01/18 Пнд 18:50:55  1124469
>>1124464
https://nodejs.org/api/esm.html
Нет, не так же.
Аноним 22/01/18 Пнд 19:35:28  1124501
NoName1.png (117Кб, 1024x645)
>>1124469
Ну тогда хуй его знает, нода 9.4.0
Аноним 22/01/18 Пнд 19:39:15  1124506
>>1124501
написано же, что под флагом. как когда-то es6 harmony фичи были.
Аноним 22/01/18 Пнд 20:24:46  1124545
>>1124501
Бабель!
Аноним 22/01/18 Пнд 21:38:56  1124585
>>1124545
>>1124506

Ну это постоянно таскаться с костылями, проще подождать, не критично пока что.
Аноним 23/01/18 Втр 00:14:04  1124658
>>1124585
С какими еще костылями. Параметр командной строки костыли? Ты с ума сошёл?
Аноним 24/01/18 Срд 02:55:08  1125310
image.png (28Кб, 502x479)
>>1123037 (OP)
Что это за рекурсия такая? На что ссылаются эти алерты?
Аноним 24/01/18 Срд 03:05:13  1125311
>>1125310
apply* имел ввиду.
Аноним 24/01/18 Срд 04:42:58  1125324
сап, жсач. планирую убить соседку и выебать ее труп. потом надо будет запилить сервак с пастой. как это лучше всего сделать?
Аноним 24/01/18 Срд 04:46:01  1125325
>>1125310
> x = {}, x.x = x
в чем проблема?
Аноним 24/01/18 Срд 04:50:16  1125327
>>1125325
Я ньюфаг, бро, я не понимаю
Аноним 24/01/18 Срд 04:59:00  1125331
>>1125327
Циклическая ссылка.
Аноним 24/01/18 Срд 08:18:15  1125366
>>1125324
>выебать ее труп
Тебе в ПХП-тред.
Аноним 24/01/18 Срд 09:18:43  1125378
151671383515433[...].jpg (99Кб, 650x650)
e 24/01/18 Срд 13:50:08  1125446
tesad
Аноним 24/01/18 Срд 13:50:55  1125448
>>1125366
Тот ебанутый джавистом был, говорят.
Аноним 24/01/18 Срд 14:47:02  1125486
>>1125331
Циркулярка.
Аноним 24/01/18 Срд 17:48:07  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);
Аноним 24/01/18 Срд 17:59:47  1125569
>>1125564
>А сейчас делаю так:
>let action = await new MyClass();
>await action.method(2);


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

let myClass = new MyClass();
await myClass.method1();
let myString = myClass.method2();
Аноним 24/01/18 Срд 19:28:55  1125609
13432984786991.jpg (43Кб, 640x480)
Наговнокодил тут приложуху на реакте с кучей сетстейтов и теперь оно мне выдает около 15 рендеров при первом появлении. Так-то ничего не тормозит, но всеж это норма или нет?
Аноним 24/01/18 Срд 19:46:54  1125614
>>1125609
Не норма. Что у тебя там происходит, блядь?
Все асинхронные данные до загрузки компонента должны получаться в component will mount методе. Это не вызовет перерендер всего приложения 100500 раз. Какие нужно стейты на старте устанавливаются в констркуторе класса. Каждый компонент должен отрендерится один раз. А не тормозит - потому что реакт сверяет реальное DOM дерево с твоим и заменяет только отличающиеся элементы. Если рендер была вызвана и нихуя не поменялось в доме, то нихуя и не произойдет.
Аноним 24/01/18 Срд 20:01:43  1125620
Сап программач
Сегодня я вкатился в программирование, а именно в JS
Зашел на кодварс, чтобы порешать задачки
Вот мой код (условие задачи по той же ссылке в комментарии сверху) :
jsfiddle.net/orphgutL/1
Как вам? Довольно элегантно, да?
Аноним 24/01/18 Срд 20:37:55  1125648
>>1125614
Ну вопщем, я загружаю данные с сервера, но вставляю их в приложение не прямым путем, а через метод добавления (ну тип каждый раз прожимается кнопочка "добавить"), который при каждом выполнении вызывает setstate
Аноним 24/01/18 Срд 20:39:57  1125652
сап аноны. я ньюфаг и хочу вкатиться в js. в общем есть БД на Firebird, можно ли сделать веб страничку на js чтобы работать с ней? Мож там фреймворки какие? Что читать, куда смотреть? спасибо
Аноним 24/01/18 Срд 20:48:47  1125661
>>1125620
Обновленная ссылка с условием
http://jsfiddle.net/orphgutL/3
Аноним 24/01/18 Срд 21:58:12  1125690
Heh.png (35Кб, 581x388)
girlswhocode.png (313Кб, 652x669)
>>1125661
>>1125620
Знатно ты упоролся
https://jsfiddle.net/ykyv42h4/
Аноним 24/01/18 Срд 22:21:10  1125703
>>1125690
Ну оно хотя бы работает, я только начал изучать кантора
Можно вообще сделать без циклов, просто 10 миллионов if, почему бы и нет
Аноним 24/01/18 Срд 22:27:59  1125707
>>1125703
Я тебя не корю. Похвально, что ты интересуешься подобными вещами. Может вырастешь во что-то большее чем формошлеп же. Keep it up.
Аноним 24/01/18 Срд 22:50:40  1125724
>>1125707
> Может вырастешь во что-то большее чем формошлеп
Эти маняфантазии. Назови 5 крупных проектов, где джиси используется не для обработки форм. Без всяких там юнити-хуюнити. Вот прям игры, приложения, ну ты понел. И что бы в зависимостях не было браузера, как в электроне.

скрипт кидди, будьте реалистами, джиси умирает, цсс3 и хтмл 5 уже умеют многое из того ради чего ваша недоджава разработалась за 2 недели.
Аноним 24/01/18 Срд 23:09:07  1125739
Это я такой тупой, или нужно выбрать другой подход к обучению? Два дня назад читал про циклы из Кантора, задачки так и не вышли у меня. Сегодня прочитал ещё раз, тему понял, но половину задачек я сделал неправильно/не сделал вообще. А это ведь только основы, а я уже зарываюсь на самое дно и не могу решать задачки. Практиковаться дальше или попробовать что-то ещё? Советы, что это не моё сразу идут нахуй, так как всё равно буду пробовать. Подкиньте советов годных, перечитывать теорию по 10 раз уже надоело, всё запоминаю, а решить задачу всё равно трудно. Ноотропы и другие вещества тоже не предлагать. Есть ещё книга "Выразительный JavaScript". Может в один котёл к Кантору закинуть и читать? Но боюсь теория опять-таки не поможет, нужна практика, полагаю. А на кодварсе для такого уровня нет задач. Есть ещё вариант делать максимум, а то что не получилось — пропускать. Помогите, а то мотивация совсем пропадает.
Аноним 24/01/18 Срд 23:10:44  1125740
>>1125739
это не твое
Аноним 24/01/18 Срд 23:12:13  1125742
>>1125724
Самый пиздатый редактор VSCode написан на JS целиком и полностью. Ну и нужно понимать, что JS создавался для решения задач в вебе. Прямо сейчас ты двачуешь благодаря этому языку. XHR тоже CSS за тебя отправлять будет? Вангую JSу еще как минимум лет 7 жизни. Единственное, что ему "угрожает" это Webassembly, и то я сомневаюсь, что для обработки формочек и разработки интерфейсов плюсовики будут писать код. Скорее WASM будет только там где бутылочное горло в приложении.
Аноним 24/01/18 Срд 23:21:14  1125747
ar5xy8V700bv2.jpg (106Кб, 700x862)
Анон, я 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)
Я понимаю, что скорее всего где-то сделал глупую ошибку, но где?
Аноним 24/01/18 Срд 23:21:47  1125748
icon.javascript.png (2Кб, 72x72)
>>1125739
Ты странный, тебе язык для каких задач вообще? Чтобы был или что? Я поражаюсь таким людям. Используй его для того, что тебе нужно сделать. Уметь в алгоритмы это - суперкруто, но нужно понимать, что крутить на хую красно-черные деревья, сортировать списки и считать числа бернулли и ряды по формуле Фаулхабера лучше в других языках. Косолапый байтослесарь, напишет говнокод и это будет работать в 10 раз быстрее твоего. Прямо сейчас открывай learn.javascript.ru в одной вкладке, твой проект в другой и делай.
Аноним 24/01/18 Срд 23:29:55  1125749
>>1125747
на винде сидишь?
Аноним 24/01/18 Срд 23:32:04  1125750
>>1125747
Мне твоим пиком жопу порвало. В фронтэнде ад и погибель, а в бекэнде мне всегда удобно, приятно и комфортно.
Мне бы работать с автором пика, чтоб он своё говно с обработкой кнопочек и расположением квадратиков пилил, а я сервера.
Аноним 24/01/18 Срд 23:43:29  1125759
>>1125749
ах да не заметил, но кроме слешей путь правильный?
то что у тебя в /config/src/ лежит?
Аноним 24/01/18 Срд 23:45:43  1125760
>>1125750
ну так воспринимай тогда как
верх - взгляд фронтендера на бэкенд
низ - взгляд бэкендера на то, что творится в мире фронтенда (вот я примерно так все эти вебпаки, ноды сейчас и вижу)
Аноним 25/01/18 Чтв 01:00:01  1125783
>>1125747
>2 день уже ебусь с вебпаком
Этож мало. Продолжай, через неделю недели глядишь начнёшь что-то понимать.
Аноним 25/01/18 Чтв 01:07:35  1125787
x5df43e43.jpg (36Кб, 550x412)
>от JavaScript на сервере все постепенно отказываются
Поясните за серверный жс, что там и как сейчас.
Аноним 25/01/18 Чтв 01:31:00  1125795
>>1125750
Сто хуев там. Необходимость изучить сборщик и менеджер зависимостей и один или несколько довольно несложных фрейморков, делающией жизнь простой и приятной, вместо jquery дрисни и говнолапши, помноженной на браузеропроблемы не является чем-то космическим или рокетсаенсным. Скорее наоборот.

Хотя, если учесть среднего JS-разработчика, то тогда да -вышеописанное близко к сакральным знаниям и запредельной сложности.
Аноним 25/01/18 Чтв 01:32:37  1125799
>>1125787
Автор ноды сказал, что его поделие хуита и душа живет в паскале для даунов Го.
Аноним 25/01/18 Чтв 06:11:43  1125840
>>1125564
Скобками оберни да и всё.
>let string = (await myClass.asyncMethod()).syncMethod()

Аноним 25/01/18 Чтв 07:29:38  1125848
>>1125742
Что ты говоришь) и окно, и отладчик, и терминал) все на жиэс) больше не написали что ли?

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

Касаемо 7 лет жыес — это вообще пиздец как смешно. Откуда такие прогнозы?
Аноним 25/01/18 Чтв 07:45:59  1125850
>>1125848
>Лiл! А как же ноде жыэс

Хуил.

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

За эти 20 лет язык JS и его реализации в браузерах менялись, да. Как в советском анекдоте по доработке баржи в авианосец напильником. Изначально предназначенный для написания колбеков в тегах <form> и ЦвЕтНыХ БеГуЩиХ СтРоК:) начинал превращаться в монстра.
Аноним 25/01/18 Чтв 08:08:10  1125854
>>1125850
Безусловно, даже на чистом HTML можно сделать достаточно много, и жс часто бывает overused. Но насчёт монстра я не согласен. Да, есть большое количество легаси, но его уже решили через бабел, пожалуйста, выбирай себе произвольные цели для сборки, любые наборы браузеров, и оно высрет из твоего ES7 то что заработает даже на старом осле.

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

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

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

Сейчас тренд по сути в том, чтобы затащить как можно больше функционала нативно в браузер и выставить наружу простые апи для жс. Да, получается своебразная ОС внутри ОС, но по степени распространённости эта платформа уникальна, ни одна другая не была так популярна, кроме возможно совокупно всех мобильных платформ вместе взятых. Браузер это ни что иное как удобный сэндбокс для безопасных приложений не требующих установки, и совсем не обязательно топить за исключительное использование его как текстового движка. То есть вся эта ботва становится универсальной и сложной, вполне себе энтерпрайзной и тяжёлой, и это неизбежно.
Аноним 25/01/18 Чтв 11:19:22  1125946
>>1125799
Сейчас бы пытаться вяло трольнуть используя вырванные из контекста протухшие цитаты.
Аноним 25/01/18 Чтв 17:36:52  1126141
>>1123987
У объектов один и тот же интерфейс (список полей одинаковый), поэтому TS похуй
Аноним 25/01/18 Чтв 19:19:40  1126203
>>1125748
Какой блядь проект? Анончик же написал что не может в циклы пока даже въехать.
>>1125739
Пытайся представлять принцип действия программы у себя в голове. Просчитывай значения всех переменных на каждом шаге цикла, сначала будет сложно, потом придет понимание и будет уже полегче. Если сразу очень тяжело и все-таки подглядел решение, то попробуй вернутся к задаче через некоторое время и решить уже самостоятельно, так лучше будет для запоминания принципа работы.
Алсо если твоя программа правильно работает, но код отличается от того что написан в учебнике то это не неправильное решение. Оно может конечно выглядеть иногда слишком громоздко по сравнению с кодом опытного программиста, но это нормально, ты же сейчас только учишься.
Аноним 25/01/18 Чтв 20:37:00  1126273
Зачем вообще учить всякие фреймворки типа того же AngularJS, почему не пишут на чистом JS? Ускорение разработки и удобство? Можно подробнее об этом?
Алсо, пишут ли на чистом JS для реальных сайтов? Имею в виду фронтенд.
Аноним 25/01/18 Чтв 20:59:01  1126296
>>1126273
>Зачем вообще учить всякие фреймворки типа того же AngularJS, почему не пишут на чистом JS? Ускорение разработки и удобство? Можно подробнее об этом?
http://blog.topolyan.com/почему-angularjs/

> Алсо, пишут ли на чистом JS для реальных сайтов? Имею в виду фронтенд.
В реальных проектах гораздо чаще используются фреймворки.
А на бэкенде используют NodeJS, на чистом там очень вряд ли можно писать.
Аноним 25/01/18 Чтв 21:08:23  1126302
>>1126273
Попробуй попиши на чистом жс, через год-два изобретёшь ангуляр.
Аноним 25/01/18 Чтв 21:28:47  1126325
>>1126302
Двачую.
Аноним 25/01/18 Чтв 21:51:01  1126343
Screenshot from[...].png (183Кб, 1920x1050)
Анон, продублирую из треда голанга здесь, вдруг есть работавшие с го и бойлерплейтами на его основе (го + реакт).

Добрый день, анон, фронтедер на связи.
Пытаюсь развернуть проект, чтобы посмотреть, как взаимодействует реакт с го, в будущем проекте пригодится
https://github.com/olebedev/go-starter-kit
установил golang, прописал gopath, тестовая прога получилась (hello world), в общем, когда прописываю make install получаю хуйню, как на пике. Гуглеж ничего не дал, все зависимости, насколько могу судить, установлены.
Yarn установлен глобально, glide установлен глобально, просто, почему-то, не хочется видеть @yarn и @glide и иже с ними.
Если просто прописываю yarn install && glide install, все проходит, но, опять же, make server выдает хуиту.
Гуглеж не помог, в чем может быть дело?
Спасибо.
Аноним 25/01/18 Чтв 23:58:36  1126416
>>1126343
> generate mocha
Аноним 26/01/18 Птн 00:39:38  1126454
>>1126416
<занудаmode>Это читается мокка</занудаmode>
Аноним 26/01/18 Птн 01:08:02  1126469
Jquery 3.3.1 вышел, перекатываемая пацаны
Аноним 26/01/18 Птн 01:23:45  1126483
>>1126454
Нет. К это Мокито.
А ваша mocha это моча. Даже логотип нездорового цвета и значок вони над стремной жидкостью.
Аноним 26/01/18 Птн 09:33:42  1126604
>>1126273
Потому, что ванильный жс - это чтобы фон страничек менять по клику на кнопку. Когда сталкиваешься с биндингом данных в дом, к темплейтингу, к устройству архитектуры - то вопрос о том, зачем нужны фреймворки, отпадает.
Аноним 26/01/18 Птн 09:34:18  1126605
>>1126469
>Jquery 3.3.1
>jQuery
>2018
Ты что, больной?
Аноним 26/01/18 Птн 12:03:24  1126634
>>1126296
>А на бэкенде используют NodeJS, на чистом там очень вряд ли можно писать.
А чем нода сама по себе не чистый JS-то? Вполне можно накостылять что-то и без экспрессов с вуеами.
Аноним 26/01/18 Птн 17:47:43  1126794
>>1126634
> дней без нового жс фреймворка: 0
Аноним 26/01/18 Птн 18:24:56  1126818
Занудный задрот стал спрашивать нудным голосом дебильные вопросы под смешки других задротов на заднем плане, можно ли импортировать файлы и прочую хуету по ES6. Меня это жутко взбесило, т.к. я пишу код лучше, чем разговариваю о нем.
Аноним 26/01/18 Птн 21:10:31  1126947
>>1126604
Поясните, откуда такой дроч на чистый жс (с)? JS как язык дрисня, а без фреймворков так еще и дрисня с которой хуй что сделашь без 13 колес.
Аноним 26/01/18 Птн 22:10:18  1126983
>>1126947
Потому что чтобы сверстать простенький динамичный интерфейс не обязательно тянуть зависимостей на 500кб. Кроме того, если ты знаешь ваниллу - значит и в любом хипстерговне разобраться не составит труда.

А вот если ты знаешь Vue - ты знаешь vue.
Аноним 26/01/18 Птн 22:20:24  1126989
>>1126947
Я об этом слышал в основном в двух контекстах:
1) Без jQuery — действительно, уже из коробки есть querySelector, для анимаций есть css, и в целом все эти селекторы уже не так нужны, так как новые фреймворки собирают дом/назначают эвенты сами. Остаётся только аякс, который уже вырезали и выкатили во всяких Fetch.
2) Без coffee/any/script — только мозг пожирает необходимостью писать одновременно на двух языках, без очевидных на сегодняшний день профитов.
Аноним 26/01/18 Птн 23:35:58  1127037
вы че с языком сделали утырки?
Аноним 26/01/18 Птн 23:42:44  1127041
>>1127037
Судя по книгам из книготреда, так обычно не пишут, а на картинке у тебя — это всего лишь игра со стрелочными функциями, которые используются чуть более, чем нигде.
Пишут "function", как и раньше писали.
Аноним 27/01/18 Суб 00:01:04  1127055
>>1127041
До поры до времени. Перепишут более-менее значимые в сообществе либы на новый стандарт отойдут от дел погроммисты старой формации и потечёт говно по трубам. Дело времени.

Я помню ещё те времена, конда сишники писали на джиси. Блядь, эти ебаные точки входа в виде глобальной функции main() просто убивали. Они там так хуевертили... имена переменных размером больше, чем содержимое переменной.
Аноним 27/01/18 Суб 01:15:59  1127083
.png (179Кб, 854x1394)
>>1123037 (OP)
Как организовываете код в своих фулстек-говнопроектах, ананасы? Набросал примерно такую структуру, за клиентскую архитектуру даже еще не брался. У кого какой опыт в данном плане?
Аноним 27/01/18 Суб 01:40:40  1127089
>>1126947
>JS как язык дрисня
Пиздабол. У JS мощнейшая OS, по мощности сравнима разве, что с CLOS или Smalltalk. Критиковать это могут лишь недалекие люди.

Аноним 27/01/18 Суб 03:27:09  1127122
анусы объясните, как избавиться от хуйни на пике?
убрал вопрос на пик2 (сюда ссылается ошибка на первой) тоже самое
Аноним 27/01/18 Суб 10:41:45  1127185
>>1127041
Я перестал писать так, как узнал, что такое декларативный подход и функциональное программирование.
Аноним 27/01/18 Суб 11:50:18  1127216
>>1123037 (OP)
Работаю бекенд-мартышкой, к фронту не подпускают. Поясните, аноны. Везде, где работал писали на ES5, ES6 и компилировали потом всё дерьмо каким-нибудь gulp webpack в удобочитаемый формат для старых браузеров. Зачем так в 2к18 делать? То есть никто не пишет код на ES6 сразу на прод без конвертации в старые стандарты?

Второй вопрос, вот ввели вам class и прочие прелести. Вы ими пользуетесь? Если да, то сразу на продакшн или тоже конвертируете в старый формат?
Аноним 27/01/18 Суб 14:27:17  1127310
>>1127216
Всё зависит от аудитории сайта. Если смузи-стартап, то можно и свежачок делать для молодёжи. А вот для Вкончактика или Тындекса пользователи ИЕ8 или Андроид4 это тьма рублей.

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

Но это всё заморочки под смузи потрещать.
Во-первых, все абстракции дырявы. Упомянутые новенькие классы подведут. Всё равно нужно знать и держать в голове работу функций-конструкторов и прототипное делегирование, на которых покоятся классы.
Во-вторых, ЖС изначально Тьюринг-полный. "Им будет непросто, тем кто парится о коде, а не о структурах данных и их взаимоотношениях".
В-третьих, больше проблем с поддержкой ВебАПИ, а не ЕС.
В-четвёртых, код это не продукт.
Аноним 27/01/18 Суб 14:34:41  1127313
>>1127310
Удачи тебе в использовании async/await в браузерах без транспиляция.
Аноним 27/01/18 Суб 14:34:45  1127314
>>1127216
Потому что если так не делать, к тебе подойдет твой рабовладелец и скажет "У моей знакомой тети Петуньи" с телефона "Нокиа5-65" твоя фича не работает. У дяди Веруна с его компьютера (ie8) тоже не получается, и вообще, мне люди постоянно пишут насчет этой проблемы, посмотри в чем там дело. мимо лишь однажды выкатил стрелки в продакшен, даже не ES6 классы
Аноним 27/01/18 Суб 15:03:25  1127329
хочу изучить js или джаву.чем они отличаются и что лучше?
Аноним 27/01/18 Суб 15:29:40  1127336
111.png (33Кб, 835x621)
222.png (45Кб, 835x1200)
>>1127313
>>1127314
Передайте мне там, чтоб я к биткам посерьёзней отнёсся.
Аноним 27/01/18 Суб 16:12:55  1127360
>>1127329
Джаваскрипт для фронтенда в основном.
Джава - бля бэкенда, мобильной разработки.
Это совершенно разные языки.
Решать тебе.
Аноним 27/01/18 Суб 16:21:38  1127369
>>1127336
Ну и? По твоим же скринам видно, что у 13,5% нет поддержки arrow function, 12% ES6 декларации классов и почти у каждого пятого поддержки async await. Этого мало что-ли? Че хуйню несешь? Если бы у каждого стоял последний хром - жизнь была бы прекрасна и никто не ебался бы с этими бабелями.

Радуйтесь, что хотя бы можно верстать на флексах с подключенным автопрефиксом.
Аноним 27/01/18 Суб 16:25:34  1127374
>>1127336
>Зачем так в 2к18 делать?
Потому что легко и похуй. В любом случае надо собирать всю хуйню в один или чуть больше файлов и минифицировать. И вот заодно и делается поддержка всякого говна, на читаемость и отлаживаемость не влияет, т.к. есть соурсмапы.

>вот ввели вам class и прочие прелести. Вы ими пользуетесь?
Каждый день. Фронтенд если - то конечно собирается в старый формат. Если нода, то нет, конечно, всё делается напрямую.
Аноним 27/01/18 Суб 16:26:06  1127375
>>1127216
>>1127374
Аноним 27/01/18 Суб 19:48:34  1127511
Как вернуть код из функции?
К примеру мне надо
return 'krokodil' + zalupa+ 'sir'
Но zalupa по понятным причинам не видна, поскольку в другой функции. А в аргументы пихать плохая идея, т.к. там много таких переменных.
Аноним 27/01/18 Суб 20:06:15  1127516
>>1127511
Три варианта:
1) zalupa была задекларированна в лексической области этой функции.
2) zalupa - аргумент этой функции соответственно попадает в ее лексическое окружение тоже.
3) каждая функция при рождении имеет ссылку [scope] на объект в области которого она была объявлена, в частности - это может быть window. т.е zalupa может быть объявлена глобально, тогда с ней можно работать.

От себя могу посоветовать не использовать глобальные переменные, а как раз отправлять залупу в аргументы. Это как раз лучшая идея. Потому что изменяемая во многих местах сущность приводит к сайд-эффектам, которые тяжело дебажить. Если залупа будет глобальной и всячески изменятся, когда код разрастется и перевалит за 1500 строк только БОГ разберется, что с ней происходит.
Аноним 27/01/18 Суб 22:08:17  1127577
>>1127314
тётя Петуния и дядя Вернон, это ты, что ли, Дудлик?
Аноним 27/01/18 Суб 22:28:47  1127589
Есть ли расшаренные аккаунты BrowserStack? 40$ за то, чтобы пройти пару тестиков в различных разрешениях и браузерах - дороха.
Аноним 28/01/18 Вск 02:25:09  1127717
>>1127589
Виртуалки используй.
Аноним 28/01/18 Вск 03:42:56  1127734
>>1127717
А для iOS Safari?
Аноним 28/01/18 Вск 11:19:04  1127828
>>1127734
Виртуалку с OS X, в ней есть инструменты для разработки и эмуляции под iOS
Аноним 28/01/18 Вск 18:53:33  1128144
>>1123312
Бампну чтоли. Не ужели тут никого кроме совсем джунов нет?
Аноним 28/01/18 Вск 19:00:25  1128149
>>1123037 (OP)
А вот хуй, после Spectre/Meltdown с вебассемблями придётся погодить.
Аноним 29/01/18 Пнд 02:05:08  1128422
>>1128144
>>1123312
По коду все в порядке. О логике ты сам заметил ошибки, (кэширование) так что хули тут ценивать.
Можешь еще тесты ебануть.
Аноним 29/01/18 Пнд 03:25:53  1128434
утипути, это кто тут у нас api у других языков пиздит?
Аноним 29/01/18 Пнд 06:53:58  1128477
>>1125742
>Самый пиздатый редактор VSCode написан на JS целиком и полностью.

Sublime-боярин не перестает проигрывать с электронных детей у которых даже текстовый редактор умудряется лагать.
Аноним 29/01/18 Пнд 09:36:44  1128519
>>1127041
Function уже давно никто не пишет, потому что пробрасывать контекст заебало выше крыши. А на картинке просто упражнение, и никакого отношения к тому, хороши стрелочные функции или плохи, это не имеет
Аноним 29/01/18 Пнд 09:37:23  1128520
>>1127314
Бабелем мы, конечно, пользоваться не умеем?
Аноним 29/01/18 Пнд 10:39:51  1128539
Как же что wasm уничтожит ваш JS.
Аноним 29/01/18 Пнд 11:22:57  1128552
>>1128539
Никогда он не уничтожит. По той же причине, по какой жив PHP.
Аноним 29/01/18 Пнд 15:08:08  1128652
xb0a34017.jpg (61Кб, 476x427)
>>1128149
>>1128539
Ты СОВЕРШЕННО не понимаешь в чем суть WASM. WASM не системное программирование «о, я кул-хацкер, ща получу произвольный доступ к памяти». WASM это не другая псевдоинтеллектуальная платформа для серьёзных программ, такая платформа сдохла в Вебе и бесконечно агонизирует в аду тырпрайза. WASM это не нуль-пойнтеры, сисьадминские гоферы или ад в наследство. WASM это место, где люди могут побыть чудовищами — писать для JS без JS, без автотипов, автопамяти, сахарка и прочих "удобностей", которые дорого стоят. WASM выполняется на JS-машине и принципиально не может ничего, чего не может JS, ведь сохраняется смелость выполнить произвольный код из произвольного места в Вебе.
Ты хочешь параллелить потоки на произвольном устройстве произвольной архитектуры, а мы смеёмся и просим ещё. Ты хочешь заменить самый жирный менеджер пакетов — мы смеёмся. Ты хочешь среди тьмы дешёвых макак найти оптимизирующих байтоёбов — мы смеёмся. Мы бездушно перепишем на JS что угодно, наши фреймворки не основаны на здравом смысле, складывать массив с числом и получать строку — наша стихия, мы — истинное лицо Интернета.
Аноним 29/01/18 Пнд 15:18:10  1128658
>>1128652
это вот сейчас что за поток сознания был?
Аноним 29/01/18 Пнд 16:18:56  1128675
>>1128519
>Function
Не путай объект с литералом.
>никто не пишет
Не говори за всех.
>потому что пробрасывать контекст заебало
Не все, как и ты не умеют и не понимают контекст.
Аноним 29/01/18 Пнд 16:28:29  1128684
canon.jpg (138Кб, 800x533)
>>1128520
Ты жопой чтец. Человек выше писал зачем транспилировать код, я написал что будет если забыть его транспилировать.
Аноним 29/01/18 Пнд 22:47:59  1128919
есть вопрос. где-то в коде(js) ошибка( event.target.style.backgroundImage),
эта хуета меянет фон объекта, и это логично, однако так же меняется и фон объекта котоыйр мне бы менять не хотелось.
Поэтому я пишу
event.target.style.backgroundImage = бла-бла;//
table.backgroundImage=null;
по-идее если у меян случайн оменяется фон таблицы то я сразу же его обнуляю. однако это не работает. Я засунул( table.backgroundImage=null;) везде где только можно, буквально каждой вторйо строчкой, однако фон продолжает меняться. Есть ли способ заблокировать изменение определенного свойства элемента даже после прямого указания через js .style. = 'smt';
?
Аноним 29/01/18 Пнд 23:31:35  1128954
Вы случаем не собираетесь перекатываться в новый тред? Я ньюфаня, вот думал вопрос задать, но вдруг вы уйдете в новый и мн еникто не ответит.
Аноним 29/01/18 Пнд 23:57:14  1128964
>>1128954
Только хотели перекатиться. Но раз ты хочешь задать вопрос, то так и быть, подождем тебя.
Аноним 30/01/18 Втр 00:03:25  1128966
>>1128954
> перекатываться в новый тред
Только ради нового фреймворка.
Аноним 30/01/18 Втр 00:56:35  1128993
wewwq.png (26Кб, 716x520)
>>1128964
Ого, спасибо! Вот вопрос:
Почему в случае с данной конкретной оберткой, bind, мы в неё ложим еще одну промежуточную функцию, а уже тогда в неё ложим ту, которую принимаем извне как аргумент? Почему нельзя сразу

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

?

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

П.С.
Если бы я делал какой-то декоратор, то тут вопросов нет потому, что я бы спрятал вспомогательные переменные или функции в замыкании. Поэтому раньше я не задумывался над вопросом, а надо ли обязательно упаковывать принимаемую как аргумент функцию в еще одну функцию.
Аноним 30/01/18 Втр 01:39:57  1129001
>>1128993
Я чуть дальше чем ты прошёл, можем вместе заниматься, если хочешь. Я как раз напарника адекватного ищу
Аноним 30/01/18 Втр 01:42:45  1129003
Аноны, я запускаю на нод.жс сервер вместе с экспрессом чтобы попробовать выучить реакт, но он не видит русской кодировки. Я так понимаю мне надо что-то дописать в server.js?
Аноним 30/01/18 Втр 01:45:18  1129004
>>1128993
>>1129001
Чтобы её можно было вызывать
Аноним 30/01/18 Втр 01:47:32  1129006
>>1128993
И странно что у тебя не работает, у меня всё работает, просто тогда она сразу запускается, без скобок, вот и вся разница
Аноним 30/01/18 Втр 03:39:42  1129014
>>1128919
Интересно, откуда вы с такой логикой вылезаете. Где вас таких выращивают-то, блядь?

Аноним 30/01/18 Втр 03:40:21  1129015
>>1128919
>где-то в коде ошибка
Она не в коде, а в голове у тебя.

Сквозь прозрачное ты видишь то, что за ним.
Аноним 30/01/18 Втр 03:45:21  1129017
>>1128993
>ложим
Кладём.

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

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

Аноним 30/01/18 Втр 10:26:54  1129063
>>1128675
>Не путай объект с литералом.
function, так тебе проще будет? Ну что за довн.

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


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


Аноним 30/01/18 Втр 10:29:17  1129064
>>1127310
>Транспайленый для старья код больше весит и медленней работает
Ну такое, оверхед процентов 5-10, не больше, от пресета.
Аноним 30/01/18 Втр 10:40:03  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."
Аноним 30/01/18 Втр 10:53:56  1129074
>>1129017
>>1129004
>>1129006
Спасибочки, теперь понял!

>>1129001
А как это - вместе? В чем будет состоять взаимодействие?
Аноним 30/01/18 Втр 10:56:21  1129076
>>1129069
делай скриншот видимой странице и обрезай его по координатам нужного тебе дива. где твоя логика? если ты будешь перерендерить div на canvas средствами webapi, это будет менее производительнее и так или иначе костыли, потому что не предназначено, и не все варианты отрендерятся правильно.

так что прекращай тупить.
Аноним 30/01/18 Втр 10:59:04  1129077
>>1129063
>Сиди целыми днями пиши let _self = this
Если ты считаешь, что контекст нужен только для того, чтобы его пробрасывать, то ты ебанутый на всю голову.
Аноним 30/01/18 Втр 11:10:41  1129078
>>1129076
>и обрезай его по координатам нужного тебе дива
Если бы все нужные мне дивы были расположены в видимой области, то я бы так и делал. Но они могут располагаться и в невидимой области.
Аноним 30/01/18 Втр 11:29:35  1129086
>>1129078
скроль до туда, где див становится видимым, потом возвращайся обратно.
Аноним 30/01/18 Втр 11:31:42  1129087
>>1129078
у новых хромов есть еще способ скринить всю страницу целиком через debugger protocol, но я не углублялся в вопрос того, сможешь ли ты до него достучаться из расширения. гугли сам.
Аноним 30/01/18 Втр 12:21:57  1129113
>>1129069
сук ты че не можешь в хром веб стор запрос сделать и посмотреть есть ли такое?
https://chrome.google.com/webstore/detail/element-capture/kabgnkphidokfocflfangphgdjhkknjg
а потом перейти на их гитхаб и посмотреть как там следано?
https://github.com/tlrobinson/element-capture
Аноним 30/01/18 Втр 12:24:53  1129114
>>1129113
Но ты ведь даун, расширению шесть лет уже, код не меняли два года. по-твоему новых апи вообще не пилят что ли?

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

ебучие, скрипт кидди.
Аноним 30/01/18 Втр 12:30:00  1129117
>>1129114
займись этим.
новое апи там вот это все
> у новых хромов есть еще способ скринить всю страницу целиком через debugger protocol, но я не углублялся в вопрос того, сможешь ли ты до него достучаться из расширения. гугли сам.
и этим займись

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

и ты меня называешь скрипт кидди
Аноним 30/01/18 Втр 19:06:06  1129297
>>1129076
Обрезка изображения с помощью какой-то библиотеки будет производительнее, чем рисование на canvas?

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

>1129087
Это интересно. Поищу эту тему. Но думаю, что хуй мне даст хром. Уж слишком у него ебливая политика безопасности.
Аноним 30/01/18 Втр 19:40:01  1129328
>>1129001

Анончииииик! Отзовись, мне интересно.
Аноним 30/01/18 Втр 22:28:19  1129383
О, не заметил JS тред. Репост >>1129381
Аноним 31/01/18 Срд 01:29:10  1129425
>>1129328
>>1129074
Это ты? Да, я тут. Ну как в чём, будем пытаться вместе учить, делать задания, сравнивать. Обучение больше социальный процесс, когда есть кто-то кто делает с тобой, то легче учится и идет
Аноним 31/01/18 Срд 05:21:49  1129447
Вопрос на миллион, аноны.
В чем разница?
Article.prototype.showCount
&
Article.showCount
И тот и другой showCount будет доступен для всех объектов созданных конструктором Article.
Когда выбирать какой случай использовать?
Аноним 31/01/18 Срд 05:29:49  1129448
>>1129447
Всё понял. Во втором случае это функция функции как бы. Сейчас проверю может ли быть функция функции функции. По идее да.
Да, всё понятно, в первом случае это метод для именно наследуемого объекта и его дети будут наследовать его
Аноним 31/01/18 Срд 05:34:15  1129449
>>1129448
Article.plusName.plusSurname = function() {
return this.name + "ala";
}


Очень интересно. Если писать просто
Article.plusName = function() {
return this.name + " ashke";
}

То он видит this.name и выдает Article + ashke, но если добавить ещё один метод, то у него уже this.name отсутствует. Интересно, почему не унаследовался?
Аноним 31/01/18 Срд 06:02:00  1129453
>>1129297
>Обрезка изображения с помощью какой-то библиотеки
Какой нахуй библиотеки. Ты его обрезаешь встроенными в язык средствами блядь. Тем же канвасом если хочешь.

И да, обрезать цельное изображение на канвасе будет быстрее, чем рендерить на него же отдельные слои.
Аноним 31/01/18 Срд 07:03:55  1129455
>>1129069
В курсе что monosnap лет 18 как изобрели?
Аноним 31/01/18 Срд 09:17:16  1129478
>>1123037 (OP)
Пошел на хуй, говнокодер ебаный сука.
Аноним 31/01/18 Срд 14:01:25  1129532
>>1129425
Да, это я. Ну, давай! Идея интересная. У меня есть дискорд ThermoLyrics, аккаунт в Лиге легенд ThermoLyrics и даже вконтактик id34627297, правда, я туда редко захожу, так что ты скажи сам как тебе удобней связаться.
Аноним 31/01/18 Срд 14:02:37  1129534
>>1129532
>дискорд
Почему все пользуются этим убогим неудобным тормозным говном?
Аноним 31/01/18 Срд 14:22:32  1129543
>>1129534
Нет ответа на этот вопрос, потому что сам вопрос дурацкий. Дискорд работает намного быстрее чем скайп. Стабильность вполне нормальная. Удобный интерфейс. Нет анальной слежки.
Аноним 31/01/18 Срд 14:30:45  1129549
>>1129543
хз хз, грузится секунд по 60, какие-то обновы качает каждый раз, причём непонять какие, насчёт быстроты непонятно, старый скайп всяко быстрее. А про анальную слежку - вообще лол. Шифрования там по сути нет.
Аноним 31/01/18 Срд 14:34:15  1129551
>>1129549
А толку от шифрования, если контора сама добровольно тебя сдает с потрохами.
Аноним 31/01/18 Срд 14:52:59  1129554
>>1129551
Ну а смысл тогда про анальную слежку говорить было?
Аноним 31/01/18 Срд 15:10:06  1129563
>>1129554
В смысле? Скайп и Винда сдают.
Аноним 31/01/18 Срд 16:41:17  1129612
1457367875984.png (116Кб, 1024x749)
Репост из соседнего треда?
Как вообще так получается что твои знания ява скрипта могут устареть за пол года?
Жабаскрипт так от фреймворков зависит, или средний джаваскриптокодер настолько некомпетентен что не может в базовые алгоритмы?
Без фреймворка сереализацию не написать чи шо?
Без подъебок, просто академический интерес.
Слышал что кто то даже работу терял после выхода новых фреймворков. Типа переучится не смог.
Чему же он тогда учился?
Аноним 31/01/18 Срд 16:45:33  1129616
>>1129612
90% JS макак на знают JS, а умеют писать на фрэйворках.
>Как вообще так получается что твои знания ява скрипта могут устареть за пол года?
Никак, язык не менялся вообще года с 2003. Если не считать пары незначительных добавок.
>Жабаскрипт так от фреймворков зависит, или средний джаваскриптокодер настолько некомпетентен что не может в базовые алгоритмы?
this
>Без фреймворка сереализацию не написать чи шо?
Всё гораздо хуже, среднестатистический JS кун спросит "Что такое"
>Чему же он тогда учился?
Не, это типа стандарт профессии. Надо написать новый сайт, находят нового макакия по цене в 2 раза дешевле прошлого.
Аноним 31/01/18 Срд 17:45:57  1129650
>>1129612
>Чему же он тогда учился?
Так ты тред проскроль.
Большинство не приходит изучать язык или понимать фундаментальные концепты как языка или объектной системы. Они идут изучать фреймворки\стеки которые написаны в вакансиях. Конечно, никакой пользы это не приносит.
Аноним 31/01/18 Срд 20:34:09  1129752
>>1129616
>>1129650
Ясно. Значит проблема не в языке, а в том что средний кандидат это не программист а наборщик текста по шаблону.
Спасибо что разъяснили.
МимоИзШарпатреда.
Аноним 31/01/18 Срд 20:39:23  1129755
>>1129752
Как в любой хайповой среде.
В программировании в целом и в айти точно такой же расклад.
А еще в разных юристах, инженерах, менеджерах в разное время.
Аноним 31/01/18 Срд 20:52:55  1129758
learn.javascript.ru, раздел "Замыкания, область видимости", урок [[Scope]] для new Function.
>То есть, если внутри функции есть var userName, то минификатор заменит её на var a (или другую букву, чтобы не было конфликта), предполагая, что так как переменная видна только внутри функции, то этого всё равно никто не заметит, а код станет короче. И обычно проблем нет.
>Но если бы new Function могла обращаться к внешним переменным, то при попытке доступа к userName в сжатом коде была бы ошибка, так как минификатор переименовал её.
>Получается, что даже если бы мы захотели использовать локальные переменные в new Function, то после сжатия были бы проблемы, так как минификатор переименовывает локальные переменные.
>Описанная особенность (тут имеется в виду, что она всегда ссылается на window, а не на LE функции, в которой создана) new Function просто-таки спасает нас от ошибок.
Вопрос - почему если минификатор переименовывает локальные переменные, то при создании Function Declaration эти переменные доступны, а при new Function - нет?
Аноним 31/01/18 Срд 21:01:08  1129773
>>1129758
Потому что минификатор анализирует синтаксис, и при переименовании локальных переменных переименновывает их там, где они используются, в том числе во внутренней function declaration.

new Function образует функцию из строки, а минификатору поебать на твои строки, он не должен их обрабатывать. Они вообще могут быть входными данными. Следовательно, у тебя там остаются использоваться переменные со страыми неминифицированными именами, которых в минифицированной версии уже нихуя нет.
Аноним 31/01/18 Срд 21:03:50  1129776
>>1129773
Понял, спасибо. Кажется.
Аноним 31/01/18 Срд 21:14:45  1129785
>>1129776

var variable = 10

function ololo () {
return variable;
}

ololo2 = new Function('return variable')

----
и ololo и ololo2 делают одно и то же.
но после минификации, минификатор переименует переменную variable в двух местах, а там где new Function она останется неизменной потому что минификатор не станет анализировать и изменять строки. В итоге, в минифицированном коде функция ololo2 будет выбрасывать исключение
Аноним 31/01/18 Срд 21:24:13  1129797
>>1129532
Дискорд что-то не находит
Аноним 31/01/18 Срд 21:28:02  1129803
>>1129785
Разобрался, спасибо еще раз.
Аноним 31/01/18 Срд 21:29:01  1129804
>>1129797
Секундочку.
Аноним 31/01/18 Срд 21:32:52  1129806
>>1129797
#1946
ThermoLyrics
Попробуй еще раз по одному из этих. Дай свой ник, мб я поищу.
Аноним 31/01/18 Срд 23:18:29  1129865
Что лучше использовать async/await или co?
Аноним 01/02/18 Чтв 02:45:49  1129923
>>1129865
>2k18
>не пользоваться асинхами изкоробки
Аноним 01/02/18 Чтв 02:48:17  1129926
>>1129612
>2k18
>не пользоваться асинхами изкоробки
>ему сделали асинхи из коробки
>Делай, вот же они лежат
>Нет, я хочу сосать хуи. Я ведь люблю хуи сосать. Целый велосипед из хуёв сделаю и буду на нём кататься.
Аноним 01/02/18 Чтв 06:41:50  1129964
>>1129926
>эти дрожащие ручонки и промахи мимо постов
Хуево быть тобой.
Аноним 01/02/18 Чтв 06:45:04  1129965
>>1129964
>Переход на личности вместо аргументов
>будто быть тупым школьником траллем быть гораздо лучше.
Аноним 01/02/18 Чтв 06:49:44  1129966
>>1129965
>будто быть быть
>это косноязыкое омежное быдло
Кем угодно быть лучше чем тобой.
Кроме, разве что, червя-пидора - и то под вопросом.
Аноним 01/02/18 Чтв 06:55:58  1129967
>>1129966
>Пилит асинхронные велосипеды
>Не считает себя червём пидором
Аноним 01/02/18 Чтв 07:07:06  1129972
>>1129967
>эти проекции веб-мартышки
Следующая стадия деградации - 1с.
Кстати, учи заранее - скоро внешний интернет закроют и все языки кроме 1с запретят.
Аноним 01/02/18 Чтв 07:08:35  1129973
>>1129972
>Пошли маняфантазии вместо аргументов
Аноним 01/02/18 Чтв 07:19:19  1129974
>>1129973
>аргументов
Червям-пидорам вроде тебя аргументы не положены - только говно на лопате.
Аноним 01/02/18 Чтв 07:22:45  1129975
>>1129974
>Червь пидор слишком тупой чтобы генрировать аргументы
>Решил написать хоть что-то чтобы не выглядело что он обосрался
Аноним 01/02/18 Чтв 07:27:53  1129977
>>1129975
>этот сплошной гринтекст который пост
Уроки-то сделал?
Аноним 01/02/18 Чтв 07:29:38  1129980
>>1129977
>Снова переход на личности
>Снова нет аргументов
>Чего ещё ожидать от дауна который решил сумничать но сразу же обосрался.
Аноним 01/02/18 Чтв 08:10:50  1129984
>>1129980
>сумничать
Уроки не сделал, всё ясно.
Аноним 01/02/18 Чтв 08:12:39  1129985
>>1129984
>попытался переключиться на грамматику
>даже тут обосрался
Аноним 01/02/18 Чтв 09:02:03  1130001
>>1129985 - >>1129984

Аноним 01/02/18 Чтв 09:05:06  1130003
>>1129077
Блять, ты реально какой-то даун.

Контекст нужен не для того, чтобы его пробрасывать, он просто есть, по спекам. Но его постоянно приходится пробрасывать в коллбэки и методы объектов. Стрелка избавляет от необходимости это делать. Чё ты доебался до меня с какой-то больной хуйнёй? Иди проверь голову и пройди пару тестов на логику, прежде чем к людям лезть
Аноним 01/02/18 Чтв 09:15:15  1130005
>>1130001 - >>1129985
Аноним 01/02/18 Чтв 09:41:32  1130010
>>1130005 - >>1129984

Аноним 01/02/18 Чтв 09:46:02  1130012
>>1130010
>>1130005
Аноним 01/02/18 Чтв 12:19:35  1130061
>>1129923
Та чё лучше то?
Аноним 01/02/18 Чтв 12:22:25  1130063
>>1130061
Лучше тебе пройти нахуй.
Аноним 01/02/18 Чтв 12:27:32  1130064
>>1130063
Не уходи от темы.
Аноним 01/02/18 Чтв 13:55:56  1130091
>>1130003
То есть ты намеренно себя лишаешь позднего связывания, а дауном называешь его?
Аноним 01/02/18 Чтв 14:02:43  1130098
Здарова пацантрэ, сейчас читаю про преобразование типов и эти самые типы в богоподобном js и охуеваю с исключений и, порой, нелогичности даже. Все вот эти вот преобразования null, undefined. Ответьте мне пожалуйста, боги джаваскрипта, в реальной работе это вообще надо будет применять. Просто во всех учебниках какие-то ебанутые примеры, по типу:
Аноним 01/02/18 Чтв 14:03:23  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"

быстрофикс
Аноним 01/02/18 Чтв 14:35:40  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, т.е. последнюю "истину", т.к. лжи не нашлось слева направо.

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

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

Из жизненного опыта, используй оператор === и никогда не используй == потому что в JavaScript == может возвращать хоть говно Иисуса. В идеале ты должен знать с какими типами имеешь дело.
Аноним 01/02/18 Чтв 16:54:48  1130164
123.png (20Кб, 490x299)
>>1130112
> вот тут отдельная тема, я охуел, когда узнал, что логические операторы && и || возвращают первую "ложь" или "истину" соответственно) возвращённую в данном случае 1, т.е. последнюю "истину", т.к. лжи не нашлось слева направо.
Это часто используется в реакте, при условном рендеренге компонентов. Указывается условие && и компонент, например.
Аноним 01/02/18 Чтв 18:41:07  1130236
>>1130163
>>1130164
Спасибо ананасы) Как-нибудь ещё сюда загляну
Аноним 01/02/18 Чтв 18:57:08  1130245
Пацаны а как сделать быструю сортировку?
Аноним 01/02/18 Чтв 20:12:30  1130290
>>1130164
>хуйня && хуйня.еботня && хуйня.еботня.пиздец && хуйня.еботня.пиздец.сука && хуйня.еботня.пиздец.сука.map(...
Аноним 01/02/18 Чтв 21:55:46  1130351
Fb4821a55878e40[...].jpg (27Кб, 494x358)
>>1130290
Вот сразу видно прожженый реакт-гребец.
Аноним 01/02/18 Чтв 22:00:45  1130354
Сап. Вкатываюсь во фронт. Материал книги Флэнегана по JS, вышедшей в 2012, актуален в 20!8?
Аноним 01/02/18 Чтв 22:05:07  1130358
>>1130354
> 2012
> JS
В 2012 и JS-то не было, а ты ещё книгу по нему какую-то нашел.
Аноним 01/02/18 Чтв 22:28:05  1130373
я бля не понимаю почему
> Parameter 'callback' implicitly has 'any' type
если я определил интерфейс в котором указал тип этого параметра и вполне себе явно.
мне еще раз надо копипастнуть?
че там с DRY?
Аноним 01/02/18 Чтв 22:33:03  1130377
>>1130373
охуительно, восхитительно джва раза писать одно и тоже.
если понадобится передавать в параметры колбэка массив строк, меняй сразу в двух местах.
Аноним 01/02/18 Чтв 23:35:15  1130419
>>1130377
Ты даун? Ебни интерфейс и используй его:
interface myCallbackType { (myArgument: string): void }
public myCallback : myCallbackType;
Аноним 01/02/18 Чтв 23:51:14  1130425
>>1130419
не понял тебя:
вот на пике
>>1130373
есть Vector2dInterface
и его методом toArray 3я строка, там определен параметр callback и его параметры
я имплементирую этот интерфейс и его метод toArray
но TS ругается дескать ты не определил тип параметра callback. Хотя я определил же в интерфейсе.
> interface myCallbackType { (myArgument: string): void }
это понятно, но мне придется это прописать в двух местах на строках 3 и 16? Если да то вопрос почему так/так и должно быть?
Аноним 02/02/18 Птн 00:33:38  1130439
.png (131Кб, 1230x608)
>>1130425
Я вообще на вашем сранном TS не писал ни разу, но разве пикрил - не то что тебе нужно?
Аноним 02/02/18 Птн 00:42:15  1130444
>>1130439
Это и нужно, вопрос то опять же в чем:
какой смысел в том что ты написал на 13 строке
callback: Vector2DCallbackInterface
?
Ты же тоже самое написал на восьмой строке.
Разве ТС не должен знать что toArray получает callback с таким то типом указанным в его интерфейсе? Зачем ты второй раз указал тип параметра callback? Это же бессмыслица

выходит что метод toArray класса Vector может получить параметр callback: number? Тем самым насрав на то, что говориться в интерфейсе его описывающем?
Аноним 02/02/18 Птн 00:45:54  1130445
>>1130439
Видишь? Он выебывается если я задам колбэку тип boolean, но в то же время выебывается если я вообще не буду прописывать тип исходя из того, что я прописал его в интерфейсе.
Я логику такого поведения не пойму чет
Аноним 02/02/18 Птн 01:04:48  1130453
>>1130444
dd
Аноним 02/02/18 Птн 01:27:02  1130459
>>1130290
Зачем?
Аноним 02/02/18 Птн 02:26:02  1130479
>>1130444
Я не понял, если тебе взападло каждый раз явно прописывать типы - че ты на ES6 не сидишь-то? В какой-нибудь сраной жаве, если ты имплементишь интерфейс - то тоже должен заново прописать все типы, хотя, они уже и так, казалось бы, в интерфейсе прописаны. И в скале тоже, хотя там оно по-другому называется. Так-то.
Аноним 02/02/18 Птн 04:50:43  1130522
Почему в этом говноязыке едут коллбеки через промисы? Где синхронный код-то, блять, я уже устал скобки расставлять, какой-то ебаный лисп получается.
Аноним 02/02/18 Птн 05:16:54  1130528
Анон, поясни пожалуйста, сил моих больше нет. Я слишком тупой, походу

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

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

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

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

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

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

Как вообще эту залупу реализовать правильно? Чтобы при наведении на объект он как бы выбирался, но скроллинга не происходило. Скроллинг нужен только, если я реально кнопкой мышки нажму
Аноним 02/02/18 Птн 05:22:55  1130529
>>1130528
>Если я навожу на него мышкой, программно срабатывает this.click(). Это нужно для того, что я передал ебаному сайту инфу о том, что я этот объект выбрал, типа кликнул на него

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



Аноним 02/02/18 Птн 05:23:11  1130530
>>1130528
Даунич. Там помимо клика есть еще несколько событий. Испрользуй onmouseover
https://www.w3schools.com/js/js_events_examples.asp
Аноним 02/02/18 Птн 05:43:22  1130532
1.png (5Кб, 395x219)
>>1130530
Блять, ты нихуя не понял
У меня и так листенер с mouseover
Который делает програмный клик

Мне нужно, чтоыб это ебаный програмный клик после наведения мышки не детектился вторым листенером
Аноним 02/02/18 Птн 05:43:49  1130533
>>1130529
Ну ты в логику умеешь? Пытался думать вообще? Если тебе надо некликая, но от наведения, может стоит подумать, как будет наведение мыши по английски и посмотреть есть ли что-то похожее?

Дегенераты блядь
Аноним 02/02/18 Птн 05:44:49  1130534
>>1130532
>не детектился вторым листенером
Сука, ну стаьв флаг в первом листенере и сбрасывай во втором. Ты че дебил какой?
Аноним 02/02/18 Птн 06:11:26  1130537
pay for setup.png (88Кб, 781x614)
Поздравляю жаваскриптеры, я думал что хуже быть не может, но теперь нашлись те, кто платит за настройку бля дев енвайронмента.
а вы продолжайте пилить по 10 вебпаков в день.
Аноним 02/02/18 Птн 06:15:12  1130538
>>1130537
Иди в пизду с такими открытиями.
Уже давно есть ВЕБПАКОИНЖЕНЕРЫ, которые нехило поднимают баблишко на продаже книг "тонкости настройки вебпака" и на разъездах по соответствующим тематическим конфочкам.
Аноним 02/02/18 Птн 06:36:20  1130545
>>1130533
>Ну ты в логику умеешь? Пытался думать вообще? Если тебе надо некликая, но от наведения, может стоит подумать, как будет наведение мыши по английски и посмотреть есть ли что-то похожее?

Да гуглил я все, целый день блять гуглю
НИхуя не помогает
Поясни уже прямо
Аноним 02/02/18 Птн 07:11:13  1130552
image.png (17Кб, 627x243)
>>1130528
Аноним 02/02/18 Птн 07:15:18  1130555
>>1130552
>>1130528
Но вообще это ты говном занимаешься. Если у тебя должна быть разная логика от наведения и от клика, то разнеси ее в разные сущности. Сам подумай, зачем ты триггеришь клики из наведения. У тебя количество функций в языке ограничено или что.
Аноним 02/02/18 Птн 07:20:27  1130557
>>1130545
>целый день блять гуглю
А достаточно было просто открыть консоль, и посмотреть чем различаются твои объекты e, в зависимости от того, программно сделан клик или инициализирован пользователем.
Аноним 02/02/18 Птн 07:23:29  1130559
>>1130552
Хоспаде, анон, спасибо
Я вариации и с таргетом и трастедом с самого анчала чекал, но нихуя не работало, а щас заработала, нужно было песочницу просто полностью перезапустить

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

Аноним 02/02/18 Птн 07:24:56  1130560
>>1130557
>А достаточно было просто открыть консоль, и посмотреть чем различаются твои объекты e, в зависимости от того, программно сделан клик или инициализирован пользователем.

Досточно не быть дауном и не надеяться на реалтайм обновление песочницы, а перезапускать вручную
Сука, урок мне на всю жизнь
Аноним 02/02/18 Птн 07:29:47  1130561
>>1130560
>надеяться на реалтайм обновление песочницы
Ну ты чё бро. Ну тё чё вообще?
Аноним 02/02/18 Птн 07:35:08  1130564
>>1130559
имей ввиду что istrusted не поддерживается в ie так как надо. чтобы было как надо, там вместо this.click надо генерировать событие через createevent. короче погуглишь.
Аноним 02/02/18 Птн 08:06:47  1130576
>>1130564
> там вместо this.click надо генерировать событие через createevent. короче погуглишь.

Я пробовал и по старому и через MouseEvent(). Без проверки трастеда тоже самое получается, обычный клик, который детектится вторым листенером
Аноним 02/02/18 Птн 08:26:32  1130581
>>1130576
>Я пробовал и по старому и через MouseEvent(). Без проверки трастеда тоже самое получается, обычный клик, который детектится вторым листенером

А, туплю, ты имеешь ввиду, что в ie, если сгенерирвоать через mouseevent, проверка трастеда сработает правильно, а если просто через click(), то по пизде пойдет?
Тогда оставлю
Хотя если ебаться с кроссбраузерностью, надо и с scrollintoview че то делать вроде как
Аноним 02/02/18 Птн 09:50:58  1130596
image.png (44Кб, 1016x299)
>>1130581
Да.
Аноним 03/02/18 Суб 09:08:36  1131130
>>1130537
свежее
Аноним 03/02/18 Суб 18:07:48  1131502
Есть ли какой-то универсальный способ одним махом решить проблему с числами с плавающей точкой? Или единственный способ - каждый раз в каждом отдельном случае округлять?
Аноним 03/02/18 Суб 18:08:17  1131503
Забугорные братья, видимо, отдыхают. Поэтому спрашиваю у вас, анончики.
Вот мой вопрос –
https://stackoverflow.com/questions/48596032/jsdoc-can-i-put-a-description-of-the-functions-at-the-beginning-of-the-file
Аноним 03/02/18 Суб 18:11:30  1131507
>>1131502
Какая проблема у тебя еще?
То, как работает JS с числами, не какое-то нестандартное поведение. Это общепринятый стандарт IEEE. И применяется не только лишь в js. Надо просто работать в соотвествии с ним.

В общем случае, не ясно что ты понимаешь под проблемами, и зачем тебе округлять числа, если тебе нужны числа с плавающей точкой, а не целые.
Аноним 03/02/18 Суб 18:24:02  1131530
>>1131507
Одно значение, вычисляемое двумя разными способами, не совпадает по меньшему разряду.
Аноним 03/02/18 Суб 20:59:06  1131624
cirno-what-look.jpg (16Кб, 350x350)
Мне внезапно пришла в голову гениальнейшая мысль: почему бы вместо компонентов/функций не создавать исключительно фабрики компонентов/функций?
То есть обычно мы пишем как-то так:
[code]
import * as React from 'react';
export class FooComponent extends React.Component ...
[/code]

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

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

Почему такая древняя как спринг практика еще не пришла в жсмирок?
Аноним 03/02/18 Суб 23:58:47  1131770
У меня есть 2 папки: client и server. В каждой по проекту на ноде.
Вопрос - как называется такое разделение? Тобишь клиент общается с серверому меня это происходит через вебпак(и какие инструменты используются в ноде что бы "выдавать" клиент наружу?)
И знаю есть такой подход, когда и сервер и клиент в одном проекте, тобишь экспресс выплёвывает скомпилированный фронт и так же содерджит в себе бэкенд.
Аноним 04/02/18 Вск 04:56:51  1131864
image.png (91Кб, 1464x742)
Аноны, нужна помощь!
Короче хотел вернуть не только "кофе готов", но и время через которое будет готово, и вдруг решил поставить ретурн перед сеттаймаутом и вот что получил! Это можно как счетчик где-нибудь использовать вместо методов статических функций?
Почему так получается?
И можете подсказать что по коду? Что лучше изменить?
Аноним 04/02/18 Вск 05:59:12  1131871
とある日の猫と猿の日常。.webm (7224Кб, 640x360, 00:01:06)
Анончики, какой самый адекватный способ задетектить использование iframe?

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


Аноним 04/02/18 Вск 12:42:46  1131968
>>1130459
Потому что иначе можно словить cannot read property 'yoba' of undefined, если где-то цепочка прерывается
Аноним 04/02/18 Вск 12:46:41  1131973
>>1130596
Пиздец какой шрифт размытый. Это линукс что ли?
Аноним 04/02/18 Вск 12:51:25  1131976
>>1131530
Округляй педофиляй
В жс кроме флоата с двойной точностью нет никаких иных представлений чисел. Может и есть какие-нибудь сахарницы для имитации других типов, но они все будут сводиться ровно к тому же: к округлению флоатов, только в красивой обёртке.
Ну или считать через wasm на каких-нибудь сяхплюсплюс. Но я не думаю, что у тебя там настолько рокет саенс, чтоб запариваться с ним.
Аноним 04/02/18 Вск 13:00:59  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
Аноним 04/02/18 Вск 13:03:11  1131980
>>1131770
Ну, клиент-серверное и называется. Ну или разделение на фронтенд и бэкенд
А дальше ты что-то всё в кашу смешал. Клиент не общается с сервером через вебпак. Вебпак собирает бандл из твоих исходников, который экспресс потом раздаёт в качестве статики. А общается клиент с серваком скорее всего через rest.
Аноним 04/02/18 Вск 13:26:24  1132001
>>1131864
https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout
Возвращает произвольный идентификатор таймера. Он не обязан быть счётчиком, только уникальным каждый раз. Считай, тебе повезло конкретно в этот момент на этой платформе. Полагаться на такое конечно же нельзя.

Почему у тебя отступ с 6 по 20 строку? У тебя дивный внутренний мир? Чувство прекрасного? Или просто копипастишь на-отвали? Зачем копипастишь? Ты учишься копипастить или писать?
Аноним 04/02/18 Вск 13:54:45  1132022
>>1131530
use toFixed, luke
Аноним 04/02/18 Вск 13:55:42  1132023
>>1131968
try catch
Аноним 04/02/18 Вск 14:56:16  1132067
>>1131978
>>1131980
Ох, перечитал свой пост и понял, что объяснил как даунпростите.
Ест-но я знаю рест/круд апи и тд. Вопрос был в другом, относяшийся к строению клиент-серверных приложений именно на ноде.
Допустим, есть фронт на реакте и бэк с экспрессом и базой.
Ведь есть выбор:
- через разделение, тобишь фронт будет где то хоститься и обращатся к работающей апишке бэка. В моём случае этим занимался пакет webpack-dev-server, который все запросы на свой же домен перенаправлял уже на мой бэкенд сервис
- всё хранить в одном, как единое целое node app - там и фронт и бэк. Тобишь указывать экспрессу в какой папке находится статика(в нашем случае это скомпилированный фронт) и на какой порт выплёвывать + в нём же есть и работает апи.

Как такое разделение в рамках ноды называется? И какими инструментами лучше всего на ноде хостить фронт, который с бэкендом не связан никак?
Аноним 04/02/18 Вск 16:31:29  1132120
>>1132001
Отступы? Что не так? Весь код с учебника переписал сам, за отступами вообще не следил, не пытался организовать как-то код
Аноним 04/02/18 Вск 16:47:31  1132136
В prototype по умолчанию всегда находится свойство constructor, указывающее на функцию-конструктор. В частности, Rabbit.prototype.constructor == Rabbit. Если мы рассчитываем использовать это свойство, то при замене prototype через Object.create нужно его явно сохранить:

Rabbit.prototype = Object.create(Animal.prototype);
Rabbit.prototype.constructor = Rabbit;

Зачем делать вторую строчку? Почему он так не понимает? Потому что удаляется конструктор при присваивании?
Аноним 04/02/18 Вск 17:17:13  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
Это всего лишь Экспресс-статик над кэшем Вебпака на локалхосте.
Аноним 04/02/18 Вск 17:27:00  1132163
>>1132155
Ещё хорошую ссылку забыл, можно было даже пост не писать:
https://github.com/devSchacht/translations/blob/master/node-hero/full_book.md
Аноним 04/02/18 Вск 17:33:59  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++ это больше структурное программирование, нежели объектное. Объектное программирование не может существовать без динамической среды. Это противоречит самому понятию объекта. А динамическое программирование это слишком сложна и непанятна. И как бы не старались с пеной у рта фанатики кричать про низкий порог входа - низкий он именно что для входа, а не для всего остального. Модификация программ в рантайме всегда было уделом креативно мыслящих людей. Для большинства это слишком сложный уровень высокой абстракции.
Аноним 04/02/18 Вск 19:50:16  1132247
изображение.png (512Кб, 754x835)
А если я совсем совсем новичек, учусь по https://learn.javascript.ru/ и пику, не погоните ссаными тряпками? Можно будет глупые вопросы задавать?
Аноним 04/02/18 Вск 19:53:42  1132250
>>1132247
Здесь других и не задают
Аноним 04/02/18 Вск 20:05:13  1132257
IMG201802041904[...].jpg (35Кб, 1184x366)
Аноним 04/02/18 Вск 20:11:27  1132259
>>1132257
Джаваскриптеры - муравьи?
Аноним 04/02/18 Вск 21:58:44  1132333
>>1132257
Похоже на кривую обучения.
Аноним 04/02/18 Вск 22:03:10  1132335
>>1132259
>>1132333
Аноним 04/02/18 Вск 23:32:08  1132403
1513506197375.jpg (140Кб, 1010x1010)
>>1132168
Спасибо, очень подробно объяснил.
Подскажи, что нужно сдлеать чтобы понимать JS на таком уровне?
Аноним 05/02/18 Пнд 03:02:30  1132535
image.png (75Кб, 1197x541)
>>1132168
Спасибо большое, анон
Подскажешь ещё одну вещь?
Что тут за CP? Это методы сайта?
Аноним 05/02/18 Пнд 04:25:30  1132546
>>1132168
> И как бы не старались с пеной у рта фанатики кричать про низкий порог входа - низкий он именно что для входа, а не для всего остального
Согласен с тобой. Я пробовал и плюсы и пхп и даже ассемблер, но тяжелее всего мне со скриптом
Аноним 05/02/18 Пнд 04:31:54  1132549
>>1132257
Пиздец, посмотрел на код современного Jquery охуел от того что понял только 10%. Зачем так жить пацаны? Вы вообще понимаете что там происходит?
Я вот например исходники Quake на 99% понимаю. А тут какая-то жопа прям.
Аноним 05/02/18 Пнд 04:35:47  1132550
>>1132168
>Сообщение get содержит один параметр, сообщение set два
А почему сет два?
Слушай, анон, можешь телегу оставить или что-нибудь? Очень хотелось бы
Аноним 05/02/18 Пнд 04:38:33  1132551
>>1132550
https://t.me/jsthread
Аноним 05/02/18 Пнд 05:34:34  1132553
>>1132403
мимопроходил
Читать умные книжки. Можешь начать с You Don't Know JS. В подробностях рассказывает всё, начиная с особенностей типизации и замыканий, и заканчивая сутью прототипного делегирования и тем, почему класс-ориентированный подход в ЖС говно.
Местами автор продвигает свой подход к построению кода (некий OLOO), к которому лично у меня много вопросов. Но это при желании можно проигнорить, а вот про устройство языка узнаешь очень многое.

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

Если прямо вообще хочешь постичь дзен, то можно спеки ECMAScript читать.
Аноним 05/02/18 Пнд 06:14:54  1132558
Антоны, помогите напутствием.

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

Ну так вот я и думаю. Может в бэкенд перекатиться? Или на фронте всё не так плохо, как мне кажется, и просто надо поискать получше в случае чего?
Аноним 05/02/18 Пнд 06:19:42  1132559
>>1132550
>А почему сет два?
Имя слота и его новое значение
Аноним 05/02/18 Пнд 06:27:48  1132560
>>1132403
>нужно сдлеать чтобы понимать JS на таком уровне
Просто изучить все существующие концепции языков языков. Понять принципы. И желательно изучить\понимать зачем эти концепции\абстракции вообще нужны. Расширять кругозор. Для этого надо иметь интерес ко всему этому. Нельзя закрывать себя в абстракциях одного языка, парадигмы и методологий. Помимо объектной концепции есть еще различные подходы к самой архитектуре. Например в JS - это событийно-ориентированное программирование, поняв которое, можно больше не воспринимать асинхронность как какую-то тяготу. И вообще понять, что это не касается только JS, а касается масс областей.
Аноним 05/02/18 Пнд 06:31:52  1132561
>>1132168
> scope средствами языка перегрузить нельзя
Здесь немного неверно. Перегрузить можно, если предусмотреть такую перегрузку. С помощью eval.
Аноним 05/02/18 Пнд 06:34:31  1132562
>>1132535
Да, это фича CodePen для возможности терминатить бесконечные циклы.
Аноним 05/02/18 Пнд 06:35:40  1132563
>>1132168
> Proxy-объекты
Одна из самых мощных и в то же время недооцененных фич языка, наряду с Reflect'ом.
Аноним 05/02/18 Пнд 06:40:20  1132564
>>1132546
И на плюсах и на асме можно в динамическое программирование. Просто оно на другом уровне. На уровне выделения исполненяемой памяти, генерации машинного кода и вот это все. В 2018 этим мало кто увлечен. Но когда-то было иначе.

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

Программирование - это способность реактивно менять абстракции смотря на те или иные вещи.
Аноним 05/02/18 Пнд 06:42:59  1132566
>>1132563
Ну, Reflect просто вынесенные методы из Object по большей степени. Для структурирования API. А прокси да, вместе с метасимволами. Но все же не хватает еще нескольких видов сообщений или символов, для перегрузки некоторых вещей (операторов). Их не вводят сразу, потому что это сильно влияет на производительность.
Аноним 05/02/18 Пнд 06:52:32  1132567
>>1132403
>нужно сдлеать чтобы понимать
Пытаться материализовать все узнаное\прочитаное.

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

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

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

Аноним 05/02/18 Пнд 07:00:30  1132569
>>1132550
>можешь телегу
телега sdfcasd
Аноним 05/02/18 Пнд 07:06:05  1132570
>>1132168
Алсо, что хотелось бы добавить. Как я считаю, JS проще бы понимался, если бы в нем использовалось REPL-driven-development, по принципу лиспов или smalltalk-систем. Не важно, на сонове образов или нет. В принципе, это не слишком сложно реализовать, если написать IDE под в учетом этого подхода. Суть его в том, что ты не пишешь код в файлах, а динамически создаешь объекты, выстраиваешь их связи и вот это все, в интерактивном режиме. Грубо говоря более лучшие devtools, которые по итогу компилируют проект в файловое представление. В девтулсах можно изъебнуться чтобы этго достичь, но это не удобно. Они все же не были созданы для разработки, а лишь для отладки.
Аноним 05/02/18 Пнд 07:17:20  1132571
>>1132558
На фронте так или иначе ты будешь связан с версткой. Потому как не верстка это уже никакая лет 10 как, а UI. Будь ты прикладным программистом, твоя боль выглядела примерно как - ребят мне нравится писать приложухи, но как дело доходит до интерфейса это бооооль.

Откуда нам-то знать, лучше тебе в бэкенд или не лучше. Можешь в бэкенд. Можешь в системщину. Можешь в машин-лернинг. Есть масса областей где нет программирования графических интерфейсов. Но API ты все-равно будешь должен проектировать и создавать.
Аноним 05/02/18 Пнд 07:41:51  1132576
>>1132567
Еще о книжках.
Нельзя никогда воспринимать авторов как авторитетов. Надо помнить, что это лишь их субъективные взгляды. Потому что книги не излагают формальных аспектов в отличии от спецификаций, например.

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

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

Поэтому ни к чему читать что-то об отдельных языках. Языки лишь инструменты, которые отражают определенные концепции. А этих концепций очень большое множество (на самом деле не столько большое, но ввиду их различных комбинаций, оно получается). По самим языкам самое полезное это спеки и справочники. В книгах же много воды, чаще субъективной.
Аноним 05/02/18 Пнд 08:43:10  1132588
>>1132571
Вот к апи как раз у меня побольше симпатии. В вёрстке дико бесит вся эта кроссбраузерность, когда к тебе приходят из Министерства обосранных штанов Российской федерации, и говорят что хотят себе портал для госзакупок с поддержкой ie8+. Если бы не эта долбёжка, и было бы там как с полифиллами в жс, то может и отношение бы другое было.

Энивей, спасибо за мысли.
Аноним 05/02/18 Пнд 08:54:12  1132591
>>1132588
Ну смотри. Если бы ты писал гуй не в вебе, а стэндэлон - там еще больший зоопарк с тулкитами. так что разницы никакой. В этом плане спека веба - даже самый универсальный и кроссплатформенный тулкит из всех существующих.

Просто тебе не нравится программировать гуй. Ну выбери ту сферу, где гуя нет. А что с поддержкой легаси (как в твоем пример ie8), так на то оно и легаси, что встречается во всех сферах. ну поставят тебе задачу взаимодействовать с каким нибудь древним сервером\сервисом по давно мертвому протоколу на том же бэкенде. Будешь так же плеваться, а делать придется. От этого не уйти.
Аноним 05/02/18 Пнд 09:31:14  1132619
>>1132168
В начале был Объект, и Объект был у Джаваскрипта и Объект был джаваскрипт.
Аноним 05/02/18 Пнд 09:35:37  1132627
>>1132619
Вообще-то это концепция пошла из smalltalk'а. JS сильно урезанная его версия с си-подобным синтаксисом. В js не хватает эсктремально позднего связывания и первоклассных выражений (когда любое выражение, это тоже объект).

Ну, а еще нельзя перегрузить цепочку прототипов у всех объектов разом, прокси-объектом, чтобы отлавливать сообщения вид idontunderstand.
Аноним 05/02/18 Пнд 09:43:02  1132633
>>1132627
Точнее сильно урезанная версия self'а, потомка smalltalk
Аноним 05/02/18 Пнд 10:00:18  1132648
>>1132627
Щас бы экстремально позднее связывание и перегузку цепочки прототипов юзать в языке, который даже кусок кода не может из другого файла заинклюдить без надстроек. И с помощью этого компьютер-сайнс буллщита писать фишинговые формы на клоакинговых лендингах, кекус максимус.
Аноним 05/02/18 Пнд 10:04:10  1132653
>>1132648
В языках с экстремально поздним связыванием и развитой системой метапрограммирвания, вообще не должно быть таких понятий как файлы и инклюды. У тебя синдром утенка.
Аноним 05/02/18 Пнд 10:13:20  1132657
>>1132653
Нет, это у тебя синдром утёнка. У тебя что, до сих пор 80-е на дворе и ты работаешь в НИИ?
Аноним 05/02/18 Пнд 10:16:20  1132659
>>1132657
Про то, что есть вещи опережающее свое время ты не слышал? Все развитие идет по пути повышения абстракционных моделей, а ты как раз стоишь на месте.
Аноним 05/02/18 Пнд 10:20:27  1132663
>>1132659
Слышь, ты, повышение абстракционной модели в лиспе и смалталке, сиди в НИИ и не гунди, у нас тут давно рыночек всё порешал. Копеечный даун на жквери нужнее умного очкарика-ботана с степенью в компьютер сайнсе и матане. Потому что даун на жквери getting things done, причём быстро, дёшево, и макаку можно заменить за пять минут. Поставил слайдер с куриными жопками по скидке - лавешка потекла. И где и кому там твой смолтолк? Да нигде и никому. Пустые коридоры застывших в 80-х НИИ, по которым ты ходишь, всё ещё думая, что живой.
Аноним 05/02/18 Пнд 10:24:59  1132665
>>1132663
>у нас тут давно рыночек всё порешал
Ну с тобой всё ясно.
Аноним 05/02/18 Пнд 10:32:21  1132667
Untitled-2.jpg (36Кб, 422x195)
>>1132665
Хочешь ты этого или нет, сопротивляешься этому или нет, но факт остаётся фактом. Смолтолк упоминается в 1 вакансии во всей стране. И то, придётся уехать на Урал к геологам. Смолтолк мёртв, так же как и сотни других языков двадцатого века.

А попытка в треде по самому хайповому и хипстерскому языку для дошколят доказать, что кому-то там нужна какая-то плохо понятная хуйня из доисторических языков выдаёт в тебе не очень умного дурачка, хотя ты, я уверен, о себе обратного мнения. Совершенно напрасно, спешу тебя расстроить. Умный потому и умный, что понимает, что его требования и желания касательно устройства мира, рынка и человечества никого кроме его самого не ебут, лол.
Аноним 05/02/18 Пнд 10:37:05  1132668
>>1132667
про дошколят жиза. научил младшего брата(16 лвл) кодить за пол года. за декабрь и январь он уже больше 1к$ нафармил. при этом еще как-то в пту ходит. тру стори не я троль
Аноним 05/02/18 Пнд 10:37:22  1132669
>>1132667
Ты несешь какую-то чушь. Придумал себе какую-то позицию за меня и с ней споришь. Ты пытаешься мне сейчас доказать, что выучить язык и его объектную систему проще, если изучать ее к верху каком? ты идиот? Все сложности у вкатывальщиков, все эти ррррряя и боль, именно потому что они не понимают сути, концепции языка и объектной системы. Почитай треды. Все вопросы однотипы и все вытекают лишь из того, что люди пытаются переложить парадигмы одного языка на другой, даже не на язык, а на объектную модель.

Твои доводы о рыночке и вакансиях - это вообще тут при чем? Есть множество более оплачиваемых профессий нежели программирование - выкатывайся в них нахуй, мамкин зарабатывальщик. Ты не допускаешь такой мысли, что программирование может приносить удовольствие, нет?
Аноним 05/02/18 Пнд 10:41:33  1132672
>>1132669
именно потому что они не понимают сути, концепции языка и объектной системы

Именно потому, что они не понимают перегрузки цепочки прототипов и позднего связывания? Я просто ору с тебя. Вопросы в этих тредах исходят из людей, которые пишут код первый раз в жизни, и непонимание глубинных механизмов работы прототипов вообще тут не при чём. Им бы понять, чем синхронный код от асинхронного отличается, чтобы форму в пхп-скрипт отправить. Они не понимают HTTP и концепцию Request-Response, о каких перегрузках ты говоришь?
Аноним 05/02/18 Пнд 10:52:23  1132681
байтоебы лезут в жс, памахите!
Аноним 05/02/18 Пнд 11:30:57  1132712
>>1132681
Будто что-то плохое. Не байтоёбы должны помереть от рака анальной джопы. Ибо заебало когда открываешь какой-нибудь сайт, а там по 15 фрэймворков, всё тупит как будто крузис запустил, и сжирает это всё 7 гиг оперативки. Сраные говнокодеры блядь.
Аноним 05/02/18 Пнд 11:34:15  1132714
>>1132681
Байтоебствую на JS в буквальном смысле этого слова, насколько это возможно, используя язык там, где другие сказали "НИПАНАЗНАЧЕНИЮ" - патчинг бинарных файлов, разбор цифровых промышленных протоколов "на лету" в качестве софтверных гейтов, полное покрытие функционала HMI/SCADA.
Где твой Босх теперь?
Аноним 05/02/18 Пнд 11:40:16  1132722
Господа, порикамендуйте что почитать вкатывальщику по SPA.
Аноним 05/02/18 Пнд 11:42:09  1132724
>>1132714
>Байтоебствую на JS в буквальном смысле этого слова, насколько это возможно, используя язык там, где другие сказали "НИПАНАЗНАЧЕНИЮ" - патчинг бинарных файлов, разбор цифровых промышленных протоколов "на лету" в качестве софтверных гейтов, полное покрытие функционала HMI/SCADA.

Но зачем, если теперь есть wasm и можно сишечку емскриптеном компелять?
Аноним 05/02/18 Пнд 12:27:44  1132749
>>1132681
>>1132724
Вас после node.js ещё что-то удивляет, лол.
Аноним 05/02/18 Пнд 16:51:54  1132942
>>1132724
и что, что он есть. Если бы ты писал на том и другом, то знал бы, что сейчас зачастую мономорфный js код намного быстрее жонглирует байтами, нежели wasm.
Аноним 05/02/18 Пнд 16:53:26  1132943
>>1132942
> мономорфный js код намного быстрее жонглирует байтами, нежели wasm.
Толстота умноженная на 900000000000000000000000000
Аноним 05/02/18 Пнд 19:26:36  1133062
>>1132942
да нахуй нужна эта экономия на спичках если все равно будет все тормозить из за сраного ДОМа
Аноним 05/02/18 Пнд 19:42:09  1133069
03b25336f3494a2[...].jpg (106Кб, 886x1200)
Аноны, дошел до графических компонентов, то есть Кантор уже все, хочу написать пару вещиц на чистом JS, но меня сбила глава "Графические компоненты", я не понял калькулятор с туду листом надо писать в ООП или как? Если нет, то в каких случаях ООП вообще нужен? Спасибо.

P.S если не берем в расчет React, что мне изучать еще?
Аноним 05/02/18 Пнд 19:53:14  1133083
>>1133062
Маня. Не во всех операциях учавствует твой ДОМ.
Аноним 05/02/18 Пнд 19:56:40  1133084
>>1133083
иди на хуй. все остальные хуйня
Аноним 06/02/18 Втр 01:04:37  1133253
Все никак не врублюсь на каких методах из жизненного цикла можно вызывать setState?
Аноним 06/02/18 Втр 11:46:23  1133374
Как распарсить дату на ваниле такого формата '06/02/18 Втр 11:11:11'?
Аноним 06/02/18 Втр 11:54:29  1133375
>>1133374
split
Аноним 06/02/18 Втр 11:57:44  1133377
>>1133375
А как потом из этого собрать валидную дату для date.parse?
Аноним 06/02/18 Втр 12:00:09  1133379
>>1133377
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Date/parse
Аноним 06/02/18 Втр 13:02:15  1133399
>>1133377
Про date.parse ты знаешь, а как строки строить -
нет?
Аноним 06/02/18 Втр 13:03:43  1133400
>>1133399
Уже написал небольшую функцию, раcплитил на цифры разные и отдал в Date().
Аноним 06/02/18 Втр 17:46:23  1133568
image.png (99Кб, 822x681)
это за январь. челику 16 лет, жс-джун место действия ВНЕЗАПНО кишинев
ваши оправдания борщееды
Аноним 06/02/18 Втр 18:21:04  1133592
>>1132667
>Смолтолк мёртв
Не мертв он, просто макак на такие должности не берут.
Аноним 06/02/18 Втр 18:33:33  1133596
>>1133568
700$
40 000 рублей.
>деньги
Нормальный разработчик интерфейсов даже жопу от стула не оторвет за эту сумму. Пусть школьник набирается опыта, может вырастет в что-нибудь нормальное.
Аноним 06/02/18 Втр 19:04:06  1133611
>>1133596
у них там 17ти летние шлюхи баксов 20 стоят
Аноним 06/02/18 Втр 19:50:23  1133642
>>1133592
Как дела в НИИ? Новую версию Фортрана завезли уже
Аноним 06/02/18 Втр 20:35:10  1133659
>>1133592
Каково общаться с объектами?
Аноним 06/02/18 Втр 20:59:29  1133676
Посоны, помогите.
Уже полтора года макакю во фротнэнде, последние пол года клепаю формочки на реакте+редаксе.
Проблема в том, что чувствую, как я отупел - SICP совершенно не могу читать, просто понимаю нихуя и задачи решать не могу.
Чувствую, что скоро стану совсем ненужным макакеном и пошлют из профессии нахуй.
Что делать блять?
Аноним 06/02/18 Втр 21:21:39  1133697
>>1133676
А тем временем в книготред новые учебники подвезли. Начал бы с них, а там и до бэк-енда добрался...
Аноним 06/02/18 Втр 21:29:33  1133704
>>1133676
Я на курсере курсы прохожу чтоб не тупеть
Аноним 07/02/18 Срд 02:09:28  1133831
46a.png (97Кб, 645x729)
>>1133676
>клепаю формочки
Это как?
Аноним 07/02/18 Срд 07:45:42  1133850
>>1133676
> чтоб не тупеть.
Очевидный Дональд Кнут. Читай про алгоритмы.
Проверять насколько ты тупой можно на любой из платформ вроде codeforces / hackerrank
Аноним 07/02/18 Срд 09:43:03  1133863
>>1133676
Матешей займись. Базарю, просветляет. Вместо игорей вечером на часик захожу, зависимость есть.
https://www.khanacademy.org/math
Или МООКи какие проходи
https://github.com/ossu/computer-science
С этого стоит начать:
https://www.coursera.org/learn/learning-how-to-learn

Сон, еда, активность, общение, эмоции. Витаминки, глицин, пирацетам, циннаризин, к врачу сходи.
Аноним 07/02/18 Срд 09:47:04  1133864
ang.png (159Кб, 1184x366)
>>1132257
Аноним 07/02/18 Срд 10:47:35  1133888
Пизда вашему JS настала.

https://blogs.msdn.microsoft.com/webdev/2018/02/06/blazor-experimental-project/
Аноним 07/02/18 Срд 10:51:24  1133894
читаю сейчас про ngrx - ебать крутая тема походу!!!
буду сейчас перепиливать свой экстеншон для хрома на это дело. хочет кто-нибудь за компанию по скайпу?
Аноним 07/02/18 Срд 10:59:40  1133898
>>1133894
>перепиливать свой экстеншон для хрома
А ты умеешь? Как там это делать всё? Сложно? Какой язык (JS тред но вдруг...)? Ну и вообще какие подводные камни? Всегда интересовался этим.
Аноним 07/02/18 Срд 11:06:19  1133902
>>1133888
Ага. А еще Линукс скоро убьет винду.
Аноним 07/02/18 Срд 11:09:06  1133906
>>1133888
> NET to WASM
> no XAML-to-HTML bridge
Ух, епт. Реально опасная штука.
Аноним 07/02/18 Срд 11:12:36  1133911
>>1133888
Серьёзно боюсь за индустрию, когда вот это воспринимают как серьёзный ответ ЖиСусу. Нет бы просто написать альтернативу без ебанутого синтаксиса, нормальной типизацией и без ебучего поглощения тонн оперативной памяти. Нет, написали такое говно, что проще в жопу ебаться чем даже просто поставить его...
Аноним 07/02/18 Срд 11:20:14  1133917
>>1133888
на самом деле годно. я всю жизнь завидовал сисярпирам и с радостью пополнил бы их ряды забыв карьеру жс кодера как страшный сон. может к старости моей запилят и я как раз вкачусь
Аноним 07/02/18 Срд 11:28:45  1133920
>>1133917
Перекатился с сисярписта на JS. Хотя по сути что та хуйня, что это хуйня, и ебал я её маму в рот.
Аноним 07/02/18 Срд 11:30:57  1133921
>>1133920
Зато у тебя был божественный LINQue и не менее православная возможность ваять код на F решеточка и исполнять его на той же платформе.
Боженьки, как я завидую шарпейчикам на NET.
Аноним 07/02/18 Срд 11:33:40  1133925
>>1133921
>Зато у тебя был божественный LINQue
Как по мне - костыль ебаный для криворуких ленивых даунов.
>возможность ваять код на F решеточка
Бесполезное говно. На деле буквально в 2015 он перестал быть концепцией. А до этого он банально мог вообще ни во что. Не считая проприетарщины.
Аноним 07/02/18 Срд 11:34:43  1133926
>>1133921
Вот чего угодно ожидал, но чтобы линк хвалили, ещё и на программаче? Ты траллируешь чтоли?
Аноним 07/02/18 Срд 11:46:44  1133932
>>1133921
>божественный LINQ
Ничто не мешает прикрутить анологичное к js.

Но у вас же тут рррряяя метапрограммирование нинужно
Аноним 07/02/18 Срд 11:51:15  1133934
>>1133932
Ты в курсе что кофе есть?
Аноним 07/02/18 Срд 11:53:03  1133935
>>1133934
При чем тут кофе? Метапрограммирование от трансляции не отличаешь?
Аноним 07/02/18 Срд 11:54:12  1133936
>>1133935
Вообще одинаковым говном считаю что то, что это.
Аноним 07/02/18 Срд 11:56:34  1133937
>>1133936
Ну и дурак.
Аноним 07/02/18 Срд 11:58:39  1133939
>>1133937
>2018
>фанатеть от кофе
Окей.
Аноним 07/02/18 Срд 12:03:59  1133942
>>1133939
Ты не просто дурак, ты вовсе идиот.
Я писал про метапрораммирование, а кофе притащил сюда свой ты. И сравнил жопу с пальцем.
Аноним 07/02/18 Срд 12:15:37  1133950
>>1133942
Не вижу никакой принципиальной разницы, что та полужохлая хуйня для даунов, что эта. Причём просто за упоминание линка на западе например могут просто сразу на работу не взять. Ибо кусок говна. Почитай западные бложики и отношение ко всему этому в целом. А ты хочешь ещё что-то к Джарвису прикрутить...
Аноним 07/02/18 Срд 14:38:36  1134075
Не нашел треда веб-макак. Вроде где-то был.

Я хочу сделать сайт, где были бы просто восхитительные формы. Самые разные. Для заданий. Мол стоит вопрос какой-то, а у тебя ниже формы для ответа. Самые разные. Иногда нужно писать в поле ответ, иногда выбирать, иногда перетаскивать. Чем это организовать дабы попроще было?
Аноним 07/02/18 Срд 14:43:54  1134081
>>1134075
Сам пишу такое. Ну и сделал уже то о чём ты говоришь.
PHP+ Mysql+Jquery+CSS+HTML.
Как-то так. Сам конструктор вопросов естественно - JQuery. Ну а выбор стилей форм берёт инфу из БД. Хотя это по моему очевидное архитектурное решение. Так что я думаю что я не совсем точно ответил на твой вопрос и ты ожидал другово ответа.
Аноним 07/02/18 Срд 14:46:09  1134082
>>1134081
Что ты пишешь?
Аноним 07/02/18 Срд 14:51:44  1134094
>>1134075
>восхитительные формы.
Vue
Аноним 07/02/18 Срд 14:53:38  1134096
>>1134082
Система тестирования же.
Аноним 07/02/18 Срд 14:54:23  1134097
>>1134094
А причём тут vue если в итоге ты будешь дёргать CSS, а там вообще похуй чем?
Аноним 07/02/18 Срд 15:00:47  1134103
>>1134097
То, что сложные условные формы и интерактив надо делать на фреймворках в общем и на вуе в частности.
Аноним 07/02/18 Срд 15:04:11  1134110
>>1134103
>Сделать форму с 4 чекбоксами
>Сделать форму с 4 радиобоксами
>Сделать форму с инпутом
> сложные условные формы и интерактив надо делать на фреймворках в общем и на вуе в частности.
Мне кажется почему-то, что можно и без фрэймворков. хз, может я ошибаюсь конечно. Не проверял (Тоесть проверил и создал уже, ну да ладно.)
Аноним 07/02/18 Срд 15:07:16  1134114
>>1134110
Если так, то тогда в чём был вообще вопрос, в чём восхитительность?
Аноним 07/02/18 Срд 15:10:03  1134119
>>1134114
Не ну может он хочет иметь несколько вагин и 1 дилдо который нужно засунуть в определённую напротив правильного ответа. Думаю это было бы восхитительно.
Аноним 07/02/18 Срд 15:10:40  1134121
artvs.jpg (79Кб, 1024x576)
>>1134119
Ваш дизайн восхитителен.
Аноним 07/02/18 Срд 15:11:01  1134122
>>1134081
Алсо, сам конструктор на жквери. Я боюсь представить, какое у тебя там говно под капотом. Жквери только для селекторов нужен, что-то на полном серьёзе писать на нём - это надо быть ёбнутым на всю голову. Дали им реактивность и высокопроисходительный патчинг дом, нет, не хотим, хотим лапшу из жквери.
Аноним 07/02/18 Срд 15:15:35  1134124
>>1134122
Так мне надо аякс и дёргать дивы.
>какое у тебя там говно под капотом.
Около 20 строк кода.
Аноним 07/02/18 Срд 15:31:16  1134129
>Мам мне надо формочку склепать
>4 чекбокса, 4 рабообокса
>Вот тебе реактивность и высокопроисходительный патчинг дом, и похуй что к задаче не имеет отношения, зато я такие слова знаю.
Аноним 07/02/18 Срд 16:02:21  1134145
Аноны, поясните вкрации за node.js и за его философию. Я попытался вкатиться и охуел, потому что в php ты просто формировал выдачу, а теперь мне еще надо и сервер настроить.
Аноним 07/02/18 Срд 16:04:48  1134146
>>1134145
Даунам было лень выучить 10 PHP комант.
Хуяк хуяк и они сделали node.js Это всё что надо знать о node.js
Аноним 07/02/18 Срд 16:05:13  1134147
>>1134129
Ты насмехаешься над тем, что человеку порекомендовали использовать профессиональные инструменты, но даже не удосужился предположить, что человек этот, возможно, сподобится сделать не просто 4 чекбокса и 4 "рабообокса", а фабрику чекбоксов и "рабообоксов".
Нет необходимости заниматься рутинной деятельностью, когда можно автоматизировать решение задачи.
Аноним 07/02/18 Срд 16:07:19  1134149
>>1134146
>Даунам было лень выучить 10 PHP комант.
Но ведь даунам не завезли в пыхе асинхронность из коробки.
Да и событийною модель дауны не могли реализовать при помощи одного пхп.
Аноним 07/02/18 Срд 16:07:42  1134150
>>1134146
php-only решения сасут. К примеру, рендер картинок.
Аноним 07/02/18 Срд 16:08:03  1134151
>>1134147
>фабрику чекбоксов
Тут то я и обосрался.
Ну окей. давай так. Какую задачу это решает?
Аноним 07/02/18 Срд 16:09:03  1134154
>>1134150
PHP прекрасно рендерит картинки
Аноним 07/02/18 Срд 16:09:26  1134155
>>1134149
>Но ведь даунам не завезли в пыхе асинхронность из коробки.
При том что любой, даже самопальный скрипт на js смог в асинхронность и без Node почему-то никого не смущщает. Ну ок.
>Да и событийною модель дауны не могли реализовать при помощи одного пхп.
Опять же была за 100 лет и не является заслугой node.
Аноним 07/02/18 Срд 16:10:38  1134157
>>1134151
Нахуячил генератор тестов в йоумэне, например, и на выходе получил восхитительные формы, написав адаптер по вкусу и сведя к минимуму последующую кастомизацию восхитительных форм.
Неужели это не очевидно?
Аноним 07/02/18 Срд 16:10:43  1134158
>>1134150
>Серверсайд бэкэнд
>Рендерить картинки
Окей. Ты ещё скажи что на PHP майнить плохо. Ясен хер он не для этого сделан. Как и Node.js
Аноним 07/02/18 Срд 16:11:13  1134159
>>1134154
Да, если нужно нарисовать рамку. Когда тебе нужно нарисовать что-то сложнее полутора линий, то проще взять canvas
Аноним 07/02/18 Срд 16:11:16  1134160
>>1134150
Начнём с того, что PHP онли решений в природе не существует.
Аноним 07/02/18 Срд 16:12:33  1134161
>>1134157
Всё что ты перечислил делается без фабрик от слова вообще. Даже кастомизация без фабрик делается. Чот ты походу сам не знаешь что такое фабрика.
Аноним 07/02/18 Срд 16:12:41  1134162
>>1134158
Сюда смотри и сам решай для чего php сделан и почему это язык №1 на вебе.
https://secure.php.net/manual/en/imagick.examples-1.php
Аноним 07/02/18 Срд 16:13:29  1134163
>>1134159
А, тоесть сначала ты говорил про рендер, а теперь выяснилось что тебе лично просто сложно. Окей. Я понял твой аргумент.
Аноним 07/02/18 Срд 16:14:41  1134165
>>1134162
Ну анон, это использует дай бог 1 из сотни.
Аноним 07/02/18 Срд 16:15:20  1134166
>>1134163
> тебе лично просто сложно
Да, лично мне сложно превращать высокоуровневые операции на канвасе в кучу низкоуровневых php операций и терять производительнсть
Аноним 07/02/18 Срд 16:15:48  1134167
>>1134165
Это используют для капчи и уменьшения аватарок
Аноним 07/02/18 Срд 16:17:52  1134168
>>1134166
Рендеринг то тут причём? Ты дал команду, он срендерил. А то, что у тебя руки кривые, и что ты чего-то там не смог - так это не его проблемы. Что за бред вообще.
Фотошоп рендерит плохо потому-что если нужно нарисовать рамку норм, но я рисовать не умею, поэтому фотошоп говно.
Аноним 07/02/18 Срд 16:19:07  1134169
>>1134167
в 2018? Я думал все переехали на гуглкапчу. Нет?
Аноним 07/02/18 Срд 16:21:24  1134171
>>1134168
> ты неосилятор ряя
Если ты ни разу не работал с картинками, то мне нечем тебе помочь.
Аноним 07/02/18 Срд 16:21:43  1134172
>>1134166
И какие такие высокоуровневые операции ты производишь? Рамку нарисовать в пхп одной строчкой:
$canvas->borderImage('black', 1, 1);
Аноним 07/02/18 Срд 16:22:07  1134173
>>1134171
3 велосипеда по работе с картинками написал. Дальше что?
Аноним 07/02/18 Срд 16:23:49  1134175
>>1134171
Сотни раз работал с картинками, просто критика мне непонятна. Ты всё именно так и написал, что ТЫ не смог осилить. Поправь меня если я не прав.
Аноним 07/02/18 Срд 16:24:57  1134177
>>1134172
Какие операции двачер может делать? Наверняка ставил свой huesosov.info на каждую пикчу. Вот и всё.
Аноним 07/02/18 Срд 16:26:46  1134178
>>1134175
>>1134172
>>1134173
В php приходится перебирать все пиксели изображения, в канвасе же это делалось в несколько строк. Интеграции js песочницы в php окружение еще не завезли.
Аноним 07/02/18 Срд 16:27:21  1134179
>>1134178
Сам вручную перебирал?
Аноним 07/02/18 Срд 16:27:55  1134180
>>1134178
>перебирать все пиксели изображения
Для чего?
Аноним 07/02/18 Срд 16:30:32  1134181
vg - Official W[...].jpg (131Кб, 819x904)
>>1134178
>В php приходится перебирать все пиксели изображения
Удивительные истории.
Аноним 07/02/18 Срд 17:19:16  1134208
>>1134178
Просто кое-кто мудак.
Аноним 07/02/18 Срд 17:21:20  1134210
>>1134208
>>1134181
>>1134179
>>1134180
Ну давайте хотя бы градиент ебаните без перебора, умники ебаные.
Аноним 07/02/18 Срд 17:24:12  1134212
image.png (59Кб, 727x599)
>>1134210
Аноним 07/02/18 Срд 17:26:48  1134213
.gif (3Кб, 48x48)
>>1134212
>imagick
Аноним 07/02/18 Срд 17:32:10  1134218
>>1134213
Что тебе не нравится?
Аноним 07/02/18 Срд 17:35:00  1134220
>>1134213
у js'а canvas тоже в язык не встроен, лол.
если тебе не нравится подключать расширение.
напиши библиотеку на чистом php, и не перебирай каждый раз свои пиксели.

переиспользование кода - слышал о таком?
Аноним 07/02/18 Срд 17:35:12  1134222
>>1134210
Ты смешной такой. Тебя носиком тыкать надо. Вот картинка с градиентом >>1134162 . 30 Строчек кода на ее создание с нуля.
Аноним 07/02/18 Срд 17:36:59  1134223
>>1134222
>>1134213
Аноним 07/02/18 Срд 17:38:46  1134226
>>1134223
Ты дегенерат.
Тебе уже выше написали, за языко-онли решения.
JS например вообще не имеет никаких средств ввода вывода.
Ты на голом js вообще нихуя сделать не сможешь. То есть, вот вообще ничего. Ни прочитать данных, ни вывести. Понял?
Аноним 07/02/18 Срд 18:01:22  1134235
>>1134226
node.js

А на чём ты без АПИ сейчас что напишешь? Странный такой.
Аноним 07/02/18 Срд 18:10:53  1134238
>>1134235
node.js это не голый js

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

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


Аноним 07/02/18 Срд 19:43:52  1134289
>>1134238
Аноним 07/02/18 Срд 19:46:50  1134290
>>1134238
Если уж занудствовать, то это Ecmascript встраиваемый без ввода-вывода, а JS это его реализация с апишечками принимающей среды (бровзера или ноды).
Аноним 07/02/18 Срд 19:53:31  1134292
>>1134290
>бровзера или ноды
Если ты знаешь лишь два окружения, это не значит, что нет остальных.
JS встроен в фотошоп, юнити, автокад и еще в кучу ПО.
Аноним 07/02/18 Срд 19:54:24  1134293
>>1134290
И апи окружения это не апи языка. и даже не его стандартная библиотека.
Аноним 07/02/18 Срд 19:57:02  1134295
>>1134290
И вообще, все началось с того, что анон (если это был не ты, то вообще не ясно хули ты вписался, а если вписался, то хул не проследил нить разговора) что анон сказал. что на php нельзя в несколько строк нарисовать градиент, в отличии от js, а когда ему привели пример, ему не понравилось, что используется расширение, а не чисто стандартная либа языка. И ему поясняли что canvas api в js это такая же сторонняя библиотека, а не часть языка.
Аноним 07/02/18 Срд 20:45:36  1134331
>>1123427
Если ты планируешь использовать частичное применение функции, то делай каррирование.
Аноним 08/02/18 Чтв 01:32:44  1134471
>>1134149
>Да и событийною модель дауны не могли реализовать при помощи одного пхп.
Какой ты соня. Тебя даже вчерашний шторм не рабзудил.
Аноним 08/02/18 Чтв 06:15:15  1134503
>>1134471
Ваша реплика оставила ощущение легкой недосказанности. Можно ли поподробнее, что я проспал?
Аноним 08/02/18 Чтв 06:16:34  1134504
>>1134503
Событийная модель уже организована в ларавели, на чистом PHP.
Аноним 08/02/18 Чтв 09:51:17  1134525
>>1134149
>не завезли в пыхе асинхронность из коробки.
Завезли, проблема в том, что только под unix, в то время как разработчики использую windows. https://secure.php.net/manual/en/book.pcntl.php
Аноним 08/02/18 Чтв 09:53:04  1134527
>>1134525
Где это ты таки разработчиков видел ? В 5б?
Аноним 08/02/18 Чтв 09:53:14  1134529
>>1134525
Зачем ты так? Теперь node.js совсем как копрофаги выглядят. Они и так за 8 лет смогли допилить только до уровня PHP 1998 года, а теперь вообще вены резать будут.
Аноним 08/02/18 Чтв 09:55:08  1134531
image.png (64Кб, 1032x390)
я должен был сегодня с утра покодить на ангуларе 2 с @ngrx/store(RxJS powered state management for Angular applications, inspired by Redux)
но вместо этого поднял пару водных и теперь мне лень
двач мотивируй меня как-то на это говно а взамен я буду выкладывать скриншоты с комментариями в процессе деятельности(хз если ли ваще материалы на русском про этот ngrx?)
буду переписывать свою простенькую приложуху(тоже на нг2) клон oneTab. экстеншон для хрома(пикрелейтед внешний вид) который при клике закрывает все вкладки и сохраняет список закрытых вкладок(табсет) в локалсторейдж.
Аноним 08/02/18 Чтв 09:56:51  1134533
>>1134531
>двач мотивируй меня как-то на это говно
Сможешь зарабатывать на трапов.
Аноним 08/02/18 Чтв 10:08:33  1134538
Screenshot2018-[...].png (188Кб, 1401x697)
Screenshot2018-[...].png (246Кб, 1334x807)
>>1134527
Сам посмотри
Аноним 08/02/18 Чтв 12:57:13  1134606
проигрываю этого срача между препроцессором гипертекста и скриптохуйней для браузеров
Аноним 08/02/18 Чтв 13:08:36  1134615
ПЛАТИНОВЫЙ ВОПРОС

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

В пользу реакта можно отнести его большую популярность (от чего большую вероятность найти работу), с другой стороны мой знакомый работает с ангуляром и может подсказать в случае чего.
Вопрос: на какой стул сесть самому, а на какой мать посадить?
Аноним 08/02/18 Чтв 13:22:52  1134623
>>1134538
>Качать какое то перегруженное говно

>Когда есть божественный сублайм текст три.
Аноним 08/02/18 Чтв 16:58:54  1134763
Завтра иду на собеседование на позицию джуниора nodejs, сказали "будут спрашивать про жс". Что повторить, подучить, посоны? Мой первый собес, меня аж трясет всего уже.
Аноним 08/02/18 Чтв 18:05:59  1134837
>>1134529
>Теперь node.js совсем как копрофаги выглядят
Че несешь? Асинх в ноде был из коробки.
Аноним 08/02/18 Чтв 18:07:04  1134838
14988390335232.png (342Кб, 474x438)
>>1134238
>node.js это не голый js
Аноним 08/02/18 Чтв 19:44:50  1134946
>>1134763
ивент луп, промисы

http://perfectionkills.com/javascript-quiz/
Аноним 08/02/18 Чтв 21:38:37  1135004
Сап двощ. Недавно начал изучать JS. Раньше создавал сайты, исходя из этого мне не совсем тягостно учить язык. Также знаком с базой с++, изучал в шараге. Так вот, хотелось бы узнать у опытных дядь в этой сфере, актуальна ли вообще такая вакансия сейчас у компаний? просто, некоторые пишут, что уже все вакансии заняты, лезть не стоит. Это дерьмо немного демотивирует и учить как-то немного теряет смысл, но немного, ибо, насколько знаю, если выучить один из языков, то в любом другом можно разобраться быстрее
Аноним 08/02/18 Чтв 21:57:12  1135013
>>1135004
как ты и подобные тебе дауны мыслят? вот ты пишешь
>некоторые пишут, что уже все вакансии заняты, лезть не стоит
а я тебе отвечу: все вакансии свободны, лезть стоит. ты мне поверишь? или другому анониму? мы что не некоторые, а какие-то особенные?
бля просто сру тебе в рот хуйло. съеби отсюда, не нервируй меня.
Аноним 09/02/18 Птн 06:21:02  1135153
>>1134946
> http://perfectionkills.com/javascript-quiz/
Ты этот говнотест сам проходил или просто решил скинуть ссылку, дабы затмить неокрепший разум неофита?
Претензия, конечно, больше не к тебе, а к автору сего теста. В частности, вопрос под номером 9:
var x = 1;
if (function f(){}) {x += typeof f;}
x;


Правильный ответ: "1function", ибо выражение внутри проверки условий if'а вернет truthy value. С этим согласен и дебаггер хрома.
Однако сайт такой вариант ответа засчитывает как ошибочный.
Аноним 09/02/18 Птн 06:23:32  1135154
>>1134837
С такими ебанутыми проблемами и 2018 году, этот асинк можно только в анус себе засунуть, и перейти на вообще что угодно кроме ноды. Даже на велосипед.
Аноним 09/02/18 Птн 08:21:35  1135168
>>1135153
Там в комментариях всё обсудили и даже развёрнутый ответ был.
В любом случае, конкретно для собеседования такой тест нинужен (разве что про хоистинг и this после присвоения другому объекту узнать, если не знал ранее). А если что-то такое спрашивают, нужно смело посылать нахуй и уходить.
Аноним 09/02/18 Птн 08:56:05  1135172
>>1135153
>>1135168
орнул. иди на хуй чмо
Аноним 09/02/18 Птн 11:53:50  1135206
>>1135153
> С этим согласен и дебаггер хрома.
Кому ты пиздишь? Пустую вкладку открой about:blank и проверь, тупой мудак.
Аноним 09/02/18 Птн 13:00:23  1135278
>>1135206
оруууууууууу
Аноним 09/02/18 Птн 13:22:35  1135319
image.png (12Кб, 681x218)
>>1135153
>Однако сайт такой вариант ответа засчитывает как ошибочный.
Всё правильно сайт засчитывает.
Аноним 09/02/18 Птн 20:15:33  1135549
Тупой вопрос, но все же. Как в JavaScript правильно записывать выражения такого типа: (398 <= 200 <= 1192)?

JS выдает true, а Python выдает false.
Аноним 09/02/18 Птн 21:42:08  1135586
>>1135549
200 >= 398 && 200 <=1192
только так, больше сахарка не завезли
Аноним 09/02/18 Птн 22:03:43  1135590
>>1135549
>398 <= 200 <= 1192
>false <= 1192
>true
Все верно выдает.
Аноним 10/02/18 Суб 17:18:20  1136006
>>1134946
Ответил правильно на 2 вопроса.
мимо реакт разраб
Аноним 10/02/18 Суб 19:23:47  1136093
>>1136006
Ехал typeof через typeof.
Хуита.
Аноним 10/02/18 Суб 21:53:12  1136216
>>1125742
> Самый пиздатый редактор VSCode написан на JS целиком и полностью.
Давно у тебя тайпскрипт стал жсом?
Аноним 10/02/18 Суб 22:38:54  1136261
>>1136216
рантайм жсный, так что он по болльшому счету прав.
Аноним 10/02/18 Суб 23:23:45  1136284
1518294223175.png (9Кб, 1080x60)
>>1136261
Ну кому ты пиздишь
Аноним 10/02/18 Суб 23:32:06  1136292
>>1136284
Что это за скрин?
Аноним 10/02/18 Суб 23:34:36  1136297
>>1136292
Гитхаб
Аноним 10/02/18 Суб 23:38:54  1136301
>>1136297
Ну это же сырцы, они собираются галпом + tsc. Никакого тайпскрипта в рантайме нет.
Аноним 11/02/18 Вск 00:08:13  1136324
>>1136301
>Самый пиздатый редактор VSCode написан на JS целиком и полностью.
>TypeScript 91.5%
>JavaScript 4.8%
>написан на JS целиком и полностью
>в рантайме
При чём тут рантайм и то, во что преобразуется код? Котлин транслируется в джаву, но никто не говорит, что приложение, написанное на котлине, это джава.
Не надо путать понятия.
Аноним 11/02/18 Вск 00:13:27  1136328
Но котлин не транслируется в джаву, он только JVM использует.

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

Самая близкая аналогия - флоу, который тупо плагин для бабел.
Аноним 11/02/18 Вск 00:44:00  1136348
>>1136328
>не транслируется
Работает поверх JVM, да.
Перефразирую: код "преобразуется" в джаву, так как в декомпилированном байт-коде именно джава.
Аноним 11/02/18 Вск 01:58:01  1136383
>>1136324
>Котлин транслируется в джаву
Ты нахуя врешь, если не знаешь? Ни в какую лдаву котлин не транслируется. Он транслируется в байткод.
Аноним 11/02/18 Вск 01:58:55  1136384
>>1136348
>так как в декомпилированном байт-коде именно джава.
Ты дауна кусок, тебе ничто не маешает представлять декомпилированный код на чем угодно, не обязательно джавой. Байт-код это байт-код.
Аноним 11/02/18 Вск 02:00:23  1136386
>>1136261
Если уж на то пошло, весь рантайм написан на плюсах. Потому что рантайм, это электрон.
И кода рантайма на плюсах во всех проектах на электорне, больше чем на js\ts\и чем угодно ином.
Аноним 11/02/18 Вск 02:01:47  1136387
>>1136301
То есть правильно я тебя понимаю, что программа на сишечке - на самом деле написана на машинных кодах, по-твоему?
Аноним 11/02/18 Вск 02:46:12  1136403
>>1136383
>>1136384
this >>1136348
Дауна кусок здесь только ты, это было в качестве примера.
>на чем угодно
Ну давай, декомпильни мне jar в c#.

>>1136387
Единственный анон, который понял суть дела.
Аноним 11/02/18 Вск 09:52:05  1136438
Анчоусы, да чо вы усираетесь, ну видите же, что он ебанутый. Знает о предмете поверхностно, прочитал на хуябре или ещё где 1-2 статьи и воображает из себя йоба пограмиста. Будьте мудрее, не ебите себе мозги. Он и сам с собой не против поспорить, не лишайте его такой прекрасной возможности.
Аноним 11/02/18 Вск 14:19:00  1136545
Screenshot20180[...].png (21Кб, 654x236)
Последние ответы были не мои. Моя идея была в том, что тс - не самостоятельный ЯП, а надстройка над жс.
Аноним 11/02/18 Вск 16:40:14  1136680
>>1136545
Что в твоем понимании самостоятельный ЯП?
Ты понимаешь, что ЯП не имеет такой характеристики как самостоятельность?
Это лишь форма записи. Ты можешь транслировать любой ЯП во что угодно. Ты можешь JS трансилировать в машкод, если очень хочешь. Просто напиши такой транслятор. ТО же самое с TS. Тебе ничто не мешает написать транслятор в другой язык. Ровно как не мешает написать интерпретатор непосредственно TS.

Идея твоя говно. Потому что ты ничего не понимаешь в языказ программирования и повсеместно путаешь исполнителя, среду и сам язык.
Аноним 11/02/18 Вск 16:56:14  1136704
>>1136680
Хорошо. Лексика у жс и у тс практически идентична, семантика тоже, как и синтаксис. Практически - 99% конструкций, доступных в тс, доступны и жс. Впрочем, это зависит от того, как будет настроен компилятор этого тс.

Тс - надмножество жс и ничто его не делает самостоятельным языком. Ну это всё равно что написать плагин к компилятору плюсов и начать говорить о новом языке.
Аноним 11/02/18 Вск 16:59:42  1136709
>>1136704
Но тогда и C++ это не самостоятельный язык, мань, а лишь надмножество над C. А Си это надмножетсво асма.

Аноним 11/02/18 Вск 17:01:21  1136711
>>1136704
>Практически - 99% конструкций, доступных в тс, доступны и жс
Еще раз говорю, ты ничего не понимаешь в языках. Любые абстракции языка более высокого уровня, моно выразить на языке более низкого уровня.
Аноним 11/02/18 Вск 17:03:45  1136713
>>1136709
Где ты видел объекты в C?
Или где ты видел такие же абстракции от инструкций в асме?

Суть в том, что в них нет практически никакой разницы ни в наборах реализуемых парадигм, ни в способах их реализации.
Аноним 11/02/18 Вск 17:04:51  1136716
>>1136711
Но они не отличаются уровнями абстракции
Аноним 11/02/18 Вск 21:59:59  1137000
Зачем нужно ставить gulp-cli глобально, а gulp локально, судя по инструкции на https://gulpjs.com/ ?
Аноним 12/02/18 Пнд 07:53:23  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/02/18 Пнд 21:35:39  1137806
Для js кода есть инструмент для визуализации вызовов в виде диаграммы?
Аноним 13/02/18 Втр 07:01:07  1137976
>>1134615
Ангуляр более корпоративный. Строгий синтакс. Тайпскрипт (считай джаваскрипт с типизацией) сразу будешь писать на том, что у JS макак еще не скоро появится. (Вроде декораторов).
Реакт - более молодежный, хипстерский. Код пишется на ES6 и богомерзком JSX. Работы дохуя. Я бы выбрал реакт.
Аноним 13/02/18 Втр 07:05:46  1137978
>>1135549
Сравнил нормальный язык программирования и скриптопарашу.
Я иногда пишу на Python для себя, при виде конструкций.
(x, y, z) > (f, g, s) вместо
x > f && y > g && z > s, слезы макакьи наворачиваются на глазах блядь.
Аноним 13/02/18 Втр 07:11:35  1137979
>>1136216
> Называет говноподелие от мелкомягких языком.
> Надмножество JS.
Давайте и реакт с JSXом назовем языком, хули уж там. TS и JS одного поля дерьмо, что бы эти петушки с псевдотипизацией не говорили.
Аноним 15/02/18 Чтв 07:51:11  1139129
>>1137976
Реакт уже давно серьезный бизнес, а не хипстеры. Ну и проще и прозрачнее в разы.
Аноним 15/02/18 Чтв 14:20:00  1139304
анон, куда скрипт без реги можно залить, чтобы прямую ссылку выдавало
Аноним 15/02/18 Чтв 16:47:57  1139396
>>1139304
На жсфиддл залей
Аноним 16/02/18 Птн 12:31:25  1140132
почему ви не перекатываете трде?
Аноним 18/02/18 Вск 19:40:59  1141603
123
Аноним 18/02/18 Вск 19:44:46  1141604
Такая тема, только начал вкатываться, написал короткую строку кода, все работает: alert("Hello world!");

Но.. Текстовый редактор выдает ошибку: ESLint завершил исполнение с ошибкой: [object Object]

Пишу в редакторе Brackets. Кто-то сталкивался с такой хуйней? Что оно блять означает? И ведь все работает, но само уведомление меня раздражает, так как что-то не в порядке



Топ тредов
Избранное