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

Этого треда уже нет.
Это копия, сохраненная 1 февраля 2017 года.

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

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

37 Кб, 1052x1052

JavaScript thread #74 Perekoter !JLHGEtxGTk 13 Янв, 15:23 #911262 В конец треда | Веб

Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, NASA, Walmart и многими другими.

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

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

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

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

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

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

Ответы912530914193915205916295

13 Янв, 15:24 #2 #911264

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

PEREKOT Perekoter !JLHGEtxGTk 13 Янв, 15:25 #3 #911265

Прошлый тред >>904377 (OP)

38 Кб, 200x272

13 Янв, 15:31 #4 #911269

Блять. Пидорасы. Мне бомбит от всех этих ваших ecmascript, es20xx и бабелей.

Хипстеры в узеньких штанишках там совсем охренели?

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

Запилили декораторы
@хуй
пизда() {}

но обосрались, декараторы работают только с классами. нельзя повесить декоратор просто на функцию или объект.

хипстеры дружно бросились использовать декораторы и команда babel берет их и выпиливает нахуй из проекта, потому что они вообще были просто шуткой, питушки так и не решили нужны ли они вообще?

в итоге имеем: недоделанные классы, в которых надо писать this ехал через this и нет приватных методов. Куча проектов использующих декораторы, которых вроде как нет и не должно быть и которые все равно через жопу сделаные.

стрелочные функции
поменял function на () => отвалилось все нахер

как вообще блять так жить?

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

Ответы911274911299911342911344911638911655915016

13 Янв, 15:42 #5 #911274

>>911269
> Как вообще сделать приватный метод класса в этом вашем яваскрипте?
Как и питоне. Какие тебе вообще приватные методы в ооп языках?

Ответы911275911276911344911655

13 Янв, 15:43 #6 #911275

>>911274
> динамически типизируемых языках
фикс

Ответы911276911344

13 Янв, 15:57 #7 #911276

>>911274 в питоне есть приватные методы. В пидорском es2015-2016 нет

>>911275 можно подумать динамическая типизация отменяет абстракцию ооп

class в javascript это просто сахар. что собственно мешало добавить private методы в этот сахар? учитывая, что эти слова уже зарезервированы, используй не хочу

Ответы911655911656

13 Янв, 16:39 #8 #911299

>>911269
так es5 никто не отменял же?

13 Янв, 18:05 #9 #911342

>>911269
>поменял function на () => отвалилось все нахер
Блядь, ты охуенен, анон. Честно, без иронии.
Заведи бложик где-нибудь на Медиуме и пиши про ЖС. Обещаю подписаться.

>Как вообще сделать приватный метод класса в этом вашем яваскрипте?
Сначала приведи аргументы в пользу наличия приватных методов в интерпретируемых ЯП.
Тебе самому разбираться, где паблик, а где прайвет?
Стандарт де-факто помечать имена приватных методов а-ля _myPrivateMeth() {}
Если не хочешь выбрасывать методы в глобал скоуп, юзай WeakMap'ы, приемы навроде Closuring и т.д. Простор же для фантазии, а тебе обязательно надо было заморочиться вокруг ES6 Classes.

>Запилили декораторы
>но обосрались, декараторы работают только с классами
Ну тут-то ты перегнул палку, бро. Декораторы можно вешать на методы класса.
Специально для тебя русек подогнали для описания декораторов: https://habrahabr.ru/post/277021/

Ответы911351911402

13 Янв, 18:13 #10 #911344

>>911274
>>911275
> Какие тебе вообще приватные методы в ооп языках?
> динамически типизируемых языках

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

>>911269
> Сделали классы, все дружно бросились их использовать, но приватные методы забыли.
Ну называй приватный методы с нижнего подчёркавания, нормальный программист их извне вызывать не будет. Вот наличие тайп-хинтов хотя бы как в PHP очень сильно помогло бы. Но вот есть ребята, которые не только ноют, а пытаются что-то изменить: https://flowtype.org/

> Flow can catch common bugs in JavaScript programs before they run, including:
> silent type conversions,
> null dereferences,
> and the dreaded undefined is not a function.

Можешь и ты присоединиться, у них там около тысячи issues на гитхабе.

Ответы911408911655

113 Кб, 609x802

261 Кб, 621x643

65 Кб, 540x451

13 Янв, 18:29 #11 #911350

Парни, помогите, как сделать эффект медленного появления подгружаемого содержимого?
Если так сразу не скажешь, вот пример:
https://cloud.mail.ru/public/Cvrs/59QuUGxGT

Ответы911657915439

13 Янв, 18:30 #12 #911351

>>911342
> Если не хочешь выбрасывать методы в глобал скоуп, юзай WeakMap'ы, приемы навроде Closuring и т.д.
Это ты сейчас преимущества или что перечислил? Почему бы эти костыли не заменить на поддержку приватных полей из коробки, вместо того чтобы фантазировать как еще можно это говно довести до состояния здорового яп.

13 Янв, 18:58 #13 #911384

Антонио, помогите пожалуйста.
Есть файл icalendar или как-то так.
Можно ли как то выудить из него информацию и использовать ее жс? Переконвертировать его в json может, или какая то библиотека есть для работы с такими файлами? Как вообще делают в подобных ситуациях?

Ответы911397

13 Янв, 18:59 #14 #911385

Аноны, это M$ вкрай охуел или я что-то не так делаю?
IE11, в Edge-режиме, выдаёт такой userAgent:
>"Mozilla/5.0 (Windows NT 6.1; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; Tablet PC 2.0; rv:11.0) like Gecko"
Они там пизданулись? Эта хуйня под FF косит.

Как детектировать любой браузер от MS?

Ответы911389

13 Янв, 19:01 #15 #911389

>>911385
>Trident/7.0;

Ответы911394

13 Янв, 19:04 #16 #911394

>>911389
В IE11, в режиме эмуляции IE9, тоже есть
>Trident/7.0;
. Это один из тех случаев, где эмуляция не помогает и нужен реальный старый IE?

Ответы911398911399

13 Янв, 19:06 #17 #911397

>>911384
В ноде есть fs.readFile(). В браузере нельзя получить доступ к внешним файлам c помощью жс.

Ответы911409912173

13 Янв, 19:07 #18 #911398

>>911394
browserstack.com

Ответы911400

13 Янв, 19:07 #19 #911399

>>911394
Обрати внимание, указан номер ревизии:
> rv:11.0

Ответы911400

13 Янв, 19:09 #20 #911400

>>911398
>>911399
Спасибо огромное, лучей добра ^_^

38 Кб, 200x272

13 Янв, 19:17 #21 #911402

>>911342
>Сначала приведи аргументы в пользу наличия приватных методов в интерпретируемых ЯП.

Разработка api, фреймворков, везде где надо скрывать реализацию от шаловливых ручек макак и принципы ООП никто не отменял.

Вот я сделал на англуяре контроллер используя class,
angalar.module('analApp', []).controller(class {
constructor(privateService) {
this.privateService = privateService;
}
ebalJs() {}
});

некоторые методы приватные, потому что не должны вызываться из шаблона (view). Однако в js я могу обратиться к этим методам и даже сервисы, которые заинджектил, вызвать, через {{ $ctrl.privateService }}

Кто скажет: нахуй так жить?
Однако у нас на проекте ребята в узких штанишках именно так и живут.

>Стандарт де-факто помечать имена приватных методов а-ля _myPrivateMeth() {}

Вот сейчас открыл arbnb конвеншин, они пишут: не используйте _ перед именами, если хотите, что-то скрыть, скрывайте. Потому что _ не работает и выглядит убого.

>Ну тут-то ты перегнул палку, бро. Декораторы можно вешать на методы класса.

имел ввиду, что никуда кроме класса и метода класса ты их не повесишь

В той же статье:
@mydecorator
def myfunc():
pass

Вау!!! Мы сделали декораторы, как в пистоне, дивитесь, хлопцы

Однако аналогичный пример на js

@mydecorator
function() {
}

работать не будет

38 Кб, 200x272

13 Янв, 19:17 #21 #911402

>>911342
>Сначала приведи аргументы в пользу наличия приватных методов в интерпретируемых ЯП.

Разработка api, фреймворков, везде где надо скрывать реализацию от шаловливых ручек макак и принципы ООП никто не отменял.

Вот я сделал на англуяре контроллер используя class,
angalar.module('analApp', []).controller(class {
constructor(privateService) {
this.privateService = privateService;
}
ebalJs() {}
});

некоторые методы приватные, потому что не должны вызываться из шаблона (view). Однако в js я могу обратиться к этим методам и даже сервисы, которые заинджектил, вызвать, через {{ $ctrl.privateService }}

Кто скажет: нахуй так жить?
Однако у нас на проекте ребята в узких штанишках именно так и живут.

>Стандарт де-факто помечать имена приватных методов а-ля _myPrivateMeth() {}

Вот сейчас открыл arbnb конвеншин, они пишут: не используйте _ перед именами, если хотите, что-то скрыть, скрывайте. Потому что _ не работает и выглядит убого.

>Ну тут-то ты перегнул палку, бро. Декораторы можно вешать на методы класса.

имел ввиду, что никуда кроме класса и метода класса ты их не повесишь

В той же статье:
@mydecorator
def myfunc():
pass

Вау!!! Мы сделали декораторы, как в пистоне, дивитесь, хлопцы

Однако аналогичный пример на js

@mydecorator
function() {
}

работать не будет

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

38 Кб, 200x272

13 Янв, 19:26 #22 #911408

>>911344
>Но вот есть ребята, которые не только ноют, а пытаются что-то изменить: https://flowtype.org/

Это скорее попытка сделать яваскрипт строго типизированным. Интересно, почему команда ангуляра второго выбрала основным языком TypeScript, а не flow?

В тайпскрпте есть private, кстати. Вот только зачем использовать TypeScript, когда можно использовать java? Если писать на нем соблюдая все типы, то нужна будет тяжеловесная ide.

Ответы911615

13 Янв, 19:28 #23 #911409

>>911397
Спасибо за подсказку, буду думать.

13 Янв, 19:32 #24 #911412

>Вот только зачем использовать TypeScript, когда можно использовать java?
А еще можно своими кокошками жонглировать, попердывая в кресло.
Ты от проблем привык фрустрировать, или все же решать их?

Если нужны приватные методы, обмажься паттерном "revealing module":
https://addyosmani.com/resources/essentialjsdesignpatterns/book/#revealingmodulepatternjavascript

Ответы911427911655

13 Янв, 19:47 #25 #911427

>>911412 получается, что если ты хочешь приватные методы, то использовать новые фишки нельзя

Ответы911436911655

13 Янв, 19:52 #26 #911436

>>911427
>получается, что если ты хочешь приватные методы, то использовать новые фишки нельзя
Риторический вопрос: ты сильно расстроился, когда узнал, что к fat arrow функциям нельзя биндить контекст? Это тоже ограничение новых фишек?

Ответы911449911655

13 Янв, 20:05 #27 #911449

>>911436 я даже не сильно обрадовался, когда они появились

14 Кб, 529x247

13 Янв, 20:20 #28 #911460

>>911313

Ответы911641

13 Янв, 23:49 #29 #911579

Запилил на express.js сайтик, который отображает некоторые мои файлики на компе, по аналогии с каталогами в винде, запустил ноду на компе, сайтик стал виден во всей локалке, т.е. дома на телефоне и планшете. Теперь могу дрочить не вставая с дивана. Завидуйте.

Ответы911585911602911616

13 Янв, 23:53 #30 #911585

>>911579
чем лучше расшаренной папки или python -m http.server?

14 Янв, 00:36 #31 #911602

>>911579
> отображает некоторые мои файлики на компе
> express.js
Ради такого фреймворк жирнючий ставить...
То, что ты описал, уместится в один index.php на 5-6 строк.

14 Янв, 01:02 #32 #911615

>>911408
>яваскрипт
Ухх, блять

>Интересно, почему команда ангуляра второго выбрала основным языком TypeScript, а не flow?
Почему команда говнуляра не выбрала dart?

Ты заебал уже хуйню пороть, маяковский. В js нет классового наследования, смирись. Здесь пишут функции, кооторые просто не экспортируют и все - нахуй не упали прайват методы. Используй java, раз так бомбит. Или костыли типа typescript/flowtype/dart

Ответы911774

14 Янв, 01:04 #33 #911616

>>911579
ты охуенен, анон

14 Янв, 01:38 #34 #911628

Аноны, почему для элементов, который запилины для стилизации шрифтов, нет конструкторов?
Не существует HTMLBoldElement для <b> - он наследует напрямую от HTMLElement. И для всяких <i> и прочих <em> тоже.

14 Янв, 02:02 #35 #911638

>>911269
>Как вообще сделать приватный метод класса в этом вашем яваскрипте?

как там в 0х, что тебе мешает юзать модули?

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

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

Ответы911654

14 Янв, 02:07 #36 #911641

>>911460
жаль не заскринил про че там, думал опять ебаный js свои финты крутит. Так-то в браузере все норм работает, там правда среда не совсем браузер обычный. Ну да похуй

Ответы911644

14 Янв, 02:15 #37 #911644

>>911641
>ебаный js свои финты крутит
В стапроцентах слачаев, это не js крутит финты, а криворукость чья-то.

14 Янв, 02:40 #38 #911654

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

Я не о том, что это годно. Все привычки классоебво в прототипном программировании не нужны (да-да, и конструкция класс в js не нужна, уебки).

Но то, что в js нельзя ничего спрятать от пользователя, так чтобы он до этого не добрался - чушь.

Ответы911655911783

65 Кб, 906x783

14 Янв, 02:44 #39 #911655

>>911269
>>911274
>>911276
>>911344
>>911402
>>911412
>>911427
>>911436
>>911654

>приватные методы

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

пик рандом

Ответы911659911783

14 Янв, 02:45 #40 #911656

>>911276
> в питоне есть приватные методы
нихуя, в питоне абсолютная рефлексия, там есть только pep8 на приватные и защищенные (protected) методы, а также магические методы и все. В js аналогично.

14 Янв, 02:51 #41 #911657

>>911350
> эффект медленного появления
Играйся с прозрачностью, где 100% растянуты на нужный тебе интервал.
>>911402
> везде где надо скрывать реализацию от шаловливых ручек макак
Кек, тогда и браузеры заставляю этого стандарта придерживаться, чтобы базовые вещи типо xhr, array.prototype и прочее никто не мог переопределить.

Алзо поясните за react-way. Можно ли в реакт роутере использовать не один компонент, а несколько?

Ответы911882

14 Янв, 02:57 #42 #911659

>>911655
Приватные методы как и классы вообще просят классоебы, которые не могут не пукнув перекатиться из КООП в ПООП. У них шаблон рвётся, так же как у статикодебилов, не способных писать код, так, чтобы их тайпчеккер по рукам все рвемя не ебашил.

Ответы911721911783912266

38 Кб, 1129x444

14 Янв, 02:59 #43 #911661

Ответы911665911720911742911786

133 Кб, 1007x464

14 Янв, 03:01 #44 #911665

>>911661

14 Янв, 05:04 #45 #911720

>>911661
Пиздец нахуй. Что это за ебатень?

14 Янв, 05:07 #46 #911721

>>911659
А как по мне, приватные метода - хорошая альтернатива. Чтобы пользователь, такой как я, лол, который если и захочет залезть - то не сможет. Если-бы была поддержка в IE9 и е.п. - давно-бы перекатился на новые стандарты. Но приватные методы ещё на стадии черновика, насколько я помню.

Ответы911731911775

14 Янв, 07:15 #47 #911731

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

Ответы911783912475

14 Янв, 08:04 #48 #911742

>>911661
>}))((function(){{ ... })))
Почему яваскрипт такой брейнфак?

Ответы911770

14 Янв, 10:28 #49 #911770

>>911742
Потому что у тебя маняфантазии и преувелечения скобочек.

14 Янв, 10:31 #50 #911774

>>911615
>В js нет классового наследования, смирись.

Но ведь оно есть и его можно было эмулировать и без введения фальшивых классов в стандарт

Сейчас пишу так:

function private() {
}

class Pizda {
jopa() {
private.bind(this)();
}
}

убого, но хоть какое-то решение

14 Янв, 10:32 #51 #911775

>>911721
Для этого есть замыкания.

Ответы912477

14 Янв, 10:47 #52 #911783

>>911654 поясни про викмап, как в нем прятать приватные свойства?

>>911655 допустим я делаю перделку-виджет, который клиент сможет разместить у себя на сайте сославшись на мой js фаил. и экспортирую api
widget.puk(); и не хочу, чтобы внутренний метод widget._perd(); был доступен клиенту.

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

>>911659 да. Рвется шабло, что есть класс, а скрыть метод я не могу. Зачем спрашивается нужны были классы?

>>911731 это уже будут его личные проблемы, потому что мы как бы предупреждали

Ответы911786911787911789911791911802911806911820912515

14 Янв, 10:52 #53 #911786

>>911783
>поясни про викмап
>>911661

14 Янв, 10:53 #54 #911787

>>911783
>допустим я делаю перделку-виджет
ЗАМЫКАНИЯ

Ответы911820911825911836

14 Янв, 10:55 #55 #911789

>>911783
>Зачем спрашивается нужны были классы?
Они всегда были. Ввиде конструктора и прототипа.
class {} Это просто сахар.

Вместе с их введением ввели и полезную вещи, как наследование от встроенных классов.

Ответы911817

14 Янв, 10:56 #56 #911791

>>911783
>это уже будут его личные проблемы, потому что мы как бы предупреждали
Тогда достаточно использовать символы.

14 Янв, 11:10 #57 #911802

>>911783
>это уже будут его личные проблемы
В смысле проблемы? Он же намеренно хочет покопаться, а не случайно там что-то сломает.

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

Ответы911817

14 Янв, 11:16 #58 #911806

>>911783
>Зачем спрашивается нужны были классы?
А что, единственное предназначение классов это приватные методы? Даже у инкапсуляции две части: сокрытие данных и группировка данных с методами.

>зачем что-то прятать
А ты можешь внятно объяснить, зачем? Толкьо без "не хочу, чтобы они имели доступ", желательно.

Ответы911817

14 Янв, 11:31 #59 #911817

>>911802
>В смысле проблемы? Он же намеренно хочет покопаться, а не случайно там что-то сломает.

Вот именно. Может он вообще туда дебагером полезет. Инкапсуляция это ключевой принцип ООП, вообще-то.

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

лол. Вообще сокрытие методов и свойств должно упрощать жизнь.

>>911789 ну ничего же не мешало добавить в этот сахар приватные методы. а так в этом сахаре нет смысла, да и какое же это сахар, когда нужно везде писать this. Даже в java такого маразма нет.

>>911806
> объясни мне принципы OOP
> яваскрипт тред

Ответы911829912035

14 Янв, 11:34 #60 #911820

>>911783
>допустим я делаю перделку-виджет, который клиент сможет разместить у себя на сайте сославшись на мой js фаил. и экспортирую api
widget.puk(); и не хочу, чтобы внутренний метод widget._perd(); был доступен клиенту.

>>911787 дело говорит: https://jsfiddle.net/ee9woaLg/

Ответы911825911836

14 Янв, 11:39 #61 #911825

>>911820
>>>911787 дело говорит: https://jsfiddle.net/ee9woaLg/
Нет, не правильно.
Так у тебя в каждом инстансе инстансы собственных приватных методов, которые ты не сможешь использовать из других методов и вообще поебота какая-то.

Замыкать нужно сам класс, а не методы в конструкторе.

У тебя хуевое какое-то представление работы js

Ответы911840

14 Янв, 11:41 #62 #911829

>>911817
>Даже в java такого маразма нет.
Это совершенно разные языки.
Люди не умеющие переключаться между абстракциями и ноющих о том, что в каком-то языке что-то не так как они привыкли, обычно идиоты

14 Янв, 11:47 #63 #911836

>>911820>>911787 спасибо, кэп.

Я как бы говорю про новомодные классы из es2015, а не про старый синтаксис

14 Янв, 11:49 #64 #911840

>>911825 человек спрашивал зачем вообще нужно скрывать внутренние методы и свойства.

Это конечно все замечательно, но как ты это сделаешь используя class и всю мощь es2016

Ответы911929

38 Кб, 200x272

14 Янв, 11:57 #65 #911847

Кстати, отсос тайпскритп засчитан

http://www.typescriptlang.org/play/#src=class Widget { private pok = 'pok'; puk() { this.perd(); } private perd() { alert('puk') }}let w = new Widget();w.perd();

Ответы911851

14 Янв, 12:01 #66 #911851

>>911847

>Private visibility is a design-time construct; it is enforced during static type checking but does not imply any runtime enforcement. ... TypeScript enforces encapsulation of implementation in classes at design time (by restricting use of private members), but cannot enforce encapsulation at runtime because all object properties are accessible at runtime. Future versions of JavaScript may provide private names which would enable runtime enforcement of private members

Ответы911855911863

14 Янв, 12:05 #67 #911855

>>911851
а если бы тайп скрипт генерил код так?

https://jsfiddle.net/Lkf7yqsq/

Впрочем с protected бы обсрались, но все равно лучше бы было

Ответы912054

14 Янв, 12:14 #68 #911863

>>911851
>Future versions of JavaScript may provide private names

es2027 ееее!

14 Янв, 12:35 #69 #911882

>>911657
> Алзо поясните за react-way. Можно ли в реакт роутере использовать не один компонент, а несколько?
Бамп вопросу

Ответы911902911906

14 Янв, 12:54 #70 #911902

>>911882
Да, можно.
https://github.com/ReactTraining/react-router/blob/master/examples/sidebar/app.js

Ответы911906

14 Янв, 12:55 #71 #911906

>>911882
>>911902
Так же есть документация для роутера 4 (альфа) https://react-router.now.sh/Match

14 Янв, 12:57 #72 #911909

Поясните за vue js. Клевая ли штука, и нужно ли учить всякие вебпаки и т.п для того, чтобы начать на ней писать что-то простое?

Ответы911917

14 Янв, 13:04 #73 #911917

>>911909
Вполне годная. Но у реакта больше материалов.
Нет, ты начинаешь делать приложение и когда у тебя возникает потребность в какой-то технологии - ты начинаешь ее использовать. Я уже год пишу на реакте, но не знаю вебпак идеально.
Найди awesome vue на github - там будут примеры приложений и ссылки на технологии, которые тебе могут понадобиться.

14 Янв, 13:25 #74 #911929

>>911840
>но как ты это сделаешь используя class
Разницу между твои и этим примером чувствуешь?
https://jsfiddle.net/kq6dzb4f/

Ответы911938

14 Янв, 13:39 #75 #911938

>>911929
Пример не он писал, а я скопипиздил и изменил имена функций. И да, у тебя паттерн "модуль" - я это понимаю, просто не заморачивался с фиддлом, а нарисовал общее понятие. Скопипиздил пример с кантора.

14 Янв, 15:37 #76 #912035

>>911817
>Инкапсуляция это ключевой принцип ООП, вообще-то.
Инкапсуляция это не только методы прятать, я же написал.

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

Ответы912246

14 Янв, 16:02 #77 #912054

>>911855
ТайпСкрипт, Дарт, ФлоуТайп нахуй не нужны. Единственный их плюс - это облегчить старт для всяких мракобесов, которые пришли из Java, например, и не могут переучиться. КофеСкрипт тоже хуета.

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

Поэтому не следует быть как Мелкомягкие и заставлять писать разработчиков на своей недоподелке.

Нахуй говнуляр 2 и туда же тайпскрипт.
Вотэт у меня бомбануло, охуеть

Ответы912057912266912506912535912552

14 Янв, 16:06 #78 #912057

>>912054
> не следует быть как Мелкомягкие и заставлять писать разработчиков на своей недоподелке.
Ну да, именно поэтому ангуляр 2 через пару лет снова станет промышленным стандартом, на котором будут пилить толстые spa, как это было с первым.

Ответы912060

14 Янв, 16:10 #79 #912060

>>912057

> ангуляр 2 через пару лет снова станет промышленным стандартом

>Angular 3 will be released in March 2017

Ответы912062912064

14 Янв, 16:14 #80 #912062

>>912060
Там леченние проблем с обратной совместимостью. Когда пилили ангулар2, над совместимостью между версиями не подумали. Сейчас во 2-й версии api устаканится и можно будет все обновлять куда проще.

Ответы912065

14 Янв, 16:14 #81 #912064

>>912060
Короче нафига я пишу, читни лучше сам
https://toddmotto.com/please-stop-worrying-about-angular-3

Ответы912065

14 Янв, 16:17 #82 #912065

>>912062
>>912064

Ну норм значит.

Ответы912078

14 Янв, 16:29 #83 #912078

>>912065
Энивей ангулар2 это уже тяжелая махина на уровне эмбер или дерби, которые для простых приложений уже не годятся из-за оверхеда всяких фич "из-коробки".

14 Янв, 19:32 #84 #912173

>>911397
Ты ща просто взял и ajax на ноль просто помножил

14 Янв, 21:08 #85 #912246

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

пофиксил

Ответы912249912284912511

14 Янв, 21:09 #86 #912249

>>912246
У тебя просто окр.

Ответы912275

14 Янв, 21:28 #87 #912266

>>912054
> Единственный их плюс - это облегчить старт для всяких мракобесов, которые пришли из Java, например, и не могут переучиться.
А ты писал на Java/C# большие проекты?

>>911659
> У них шаблон рвётся, так же как у статикодебилов, не способных писать код, так, чтобы их тайпчеккер по рукам все рвемя не ебашил.
Но ведь это удобно, чем больше проект - тем это полезнее. Вот, послушай чувака, у него явно и опыта и мозгов побольше, чем у тебя: https://www.youtube.com/watch?v=Ui8YfxzjaTY

Ответы912271912278912480

14 Янв, 21:41 #88 #912271

>>912266
че там на видео, питонопетух обсирает жсопетухов?

Ответы912272

14 Янв, 21:43 #89 #912272

>>912271
Мужик обстоятельно рассказывает об удобстве TypeScript и преимуществах строгой типизации в общем.

14 Янв, 21:46 #90 #912275

>>912249 у меня перфекционизм и в этом нет ничего плохого. Может в яваскрипт сообществе поощряется написание говнокода, но в java мире за это бьют по рукам

Ответы912276

14 Янв, 21:46 #91 #912276

>>912275
> но в java мире за это бьют по рукам
Лол, чет на всю квартиру проиграл

Ответы912280912281

14 Янв, 21:48 #92 #912278

дело говорит >>912266

Никто из здешник большой проект никогда не писал видимо. Но тут и правда удобней будет яву использовать я фанат gwt

14 Янв, 21:48 #93 #912280

>>912276
Тоже проиграл с подливой, соседи ментов вызвали, а то шумно очень. Еще мчс приехали, я подливой пол дома затопил.

Ответы912281

14 Янв, 21:52 #94 #912281

>>912280>>912276 с чего проигнал? расскажи, посмеемся вместе

Ответы912300

113 Кб, 1948x858

14 Янв, 21:55 #95 #912284

>>912246
> правильный код
> красивый код
> джава

Ответы912285912557

14 Янв, 21:57 #96 #912285

>>912284 Да. Что не так? Назови хоть одну книгу о том, как красиво писать код на javascript (не код конвенцию)

Ответы912286912300915592

14 Янв, 21:59 #97 #912286

>>912285
Eloquent JS?

Ответы912292

14 Янв, 22:04 #98 #912292

>>912286 зугуглил, полистал и проиграл.

14 Янв, 22:26 #99 #912300

>>912281
С того, что джава макака будет рассказывать, насколько этот язык позволяет писать хороший код. Обычно это такой же ад, как и js. Упрощает понимание как раз документирование в нужных местах и тесты. Неочевиднаю логику любой язык позволяет настругать.

>>912285
> как красиво писать код на javascript
Посмотри исходники 2 ангулара, экспресс.
Книги ему какие-то подавай.

Ответы912322912557

14 Янв, 23:03 #100 #912322

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

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

Ответы912324912353912511

14 Янв, 23:04 #101 #912324

>>912322
С последнего утверждения улыбка на поллица уже была.

14 Янв, 23:45 #102 #912333

В общем, я тот, кто написал вот это http://pastebin.com/nhedaiHx Как можно заметить, функция isPair реализована не очень хорошо. Теперь мне понадобилось определять не только пары, но ещё и другие вещи, причём многим я не могу в constructor засунуть функцию, потому что они хоть и производятся одной функцией, но всё равно имеют разные типы. Собственно, мне интересно 1) как их отличать друг от друга, и 2) ничего же страшного не случится, если я в constructor затолкаю строку? Ну, кроме того, что это "плохой стиль".

15 Янв, 00:31 #103 #912353

>>912322
>Даже этот ваш тайпскрипт не более чем попытка запилить яву
Нет, это попытка запилить С#. А знаешь в чём разница? В тайпскрипте есть дженерики. В жаве их нет.

Ответы912359

15 Янв, 00:39 #104 #912359

>>912353
>Нет, это попытка запилить С#

начнем, с того, что C# это попытка сделать яву с кучей говна и сахора

>В тайпскрипте есть дженерики. В жаве их нет.

ха ха проиграл
https://docs.oracle.com/javase/tutorial/java/generics/types.html

Ответы912535

15 Янв, 06:45 #105 #912475

>>911731
Ты ебанутый?
Как он сделает публичным метод, к котором даже не имеет доступа даже через Консоль? Вообще, как он изменит тип метода?
Ты ебанутый.

Ответы912511

15 Янв, 06:45 #106 #912477

>>911775
Функциональный стиль ООП - это пиздец и плохой код, как по мне.

Ответы912577

15 Янв, 08:24 #107 #912480

>>912266
>А ты писал на Java/C# большие проекты?
Нет

15 Янв, 10:58 #108 #912506

>>912054
Если хочешь один раз чему-то научится и работаьь следующие 50 лет, ничего не изучая, не читая и не гугля, то иди дворником работать. ЯП и решения на них будут постоянно развиваться, не смотря на все твое желание оставаться клавиатурной макакой

Ответы912512912766

15 Янв, 11:06 #109 #912511

>>912475
ПРОСТО возьмёт и изменит. Скачает твой код, подправит, и будет использовать свою версию. Или скопирует нужную часть и через плагин добавит публичный метод, который выполняет тот же код, что и приватный.

>>912246
>и правильный код
Разумеется, никакой конкретики, одни смехуечки и гринтекст.

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

Ответы912529912535912549

15 Янв, 11:06 #110 #912512

>>912506
>научиться

15 Янв, 11:08 #111 #912515

>>911783
>widget.puk(); и не хочу, чтобы внутренний метод widget._perd(); был доступен клиенту

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

widget.prototype._perd = function() {...};

Ответы912517912529

15 Янв, 11:12 #112 #912517

>>912515
А что мешает тебе купить машину и оторвать в ней тормоза?

Ответы912520

15 Янв, 11:30 #113 #912520

>>912517

в webassebly обещают байт код для ЖС, можно будет потом прятать весь код в него. только вот нахуя это всё, когда кругом опенсурс во все поля. хотя...

Ответы912521912578

15 Янв, 11:31 #114 #912521

>>912520
*webassembly

15 Янв, 12:00 #115 #912529

>>912511
>ПРОСТО возьмёт и изменит. Скачает твой код, подправит, и будет использовать свою версию. Или скопирует нужную часть и через плагин добавит публичный метод, который выполняет тот же код, что и приватный.

про объясни, зачем это делать?

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

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

>>912515 можно, но зачем? я просто скрыл от клиента все не нужное и весь информационный шум, оставив только нужные методы

Ответы912644

15 Янв, 12:15 #116 #912530

>>911262 (OP)
0
голос «против»
избранное

Делаю веб-приложение с расчётом на длительную перспективу. Решил изначально использовать Angular 2, но мне не понравилось, что он слишком массивный, создаёт много файлов и директорий, а так-же устанавливает много модулей, которые мне не нужны (а нужны исключительно для работы ангуляра 2), тем самым, вовсе не вписывается в общую арххитектуру приложения. А за основу своего приложения, брать Angular 2 я не буду, так как его роль далеко не первостепенна. Но я вот вспомнил, что первый ангуляр просто подключается ссылочкой и работает сразу же. Но возникает вопрос, а Ангуляр 1, это вообще хороший продукт, а то я начитался об огромных преимуществах Ангуляра 2, над своим младшим братом, что возникает вопрос, стоит ли вообще использовать Ангуляр1? Или лучше обойтись православным JQuery и не морочить себе голову? Или быть может есть какой-то такой же простенький фреймворк (библиотека), чтобы просто подключить его ссылочкой и не собирать по частям, не закачивать какие-то дополнительные возможности, а просто сесть с сделать то что мне нужно?

Ответы912532912534912535

15 Янв, 12:22 #117 #912532

>>912530

React

Ответы912533912535

15 Янв, 12:25 #118 #912533

>>912532
Я читал что он очень ограничен в своих возможностях, а что самое ужасное, ему нужно в случае всего каике-то сторонние модулиподключать.
Это всё правда?

15 Янв, 12:25 #119 #912534

>>912530
VueJS

Ответы912535912536

15 Янв, 12:29 #120 #912535

>>912511
> Скачает твой код, подправит, и будет использовать свою версию.
>>912359
> C# это попытка сделать яву с кучей говна и сахора
А получилось так, что все новые фичи и сахар джава перенимала из С# с опозданием на пару-тройку лет. Так что попытка вышла отличнейшая. Если бы еще не была привязана к одной платформе - java-приложения были бы очень сильно потеснены.
>>912054
> ТайпСкрипт, Дарт, ФлоуТайп нахуй не нужны
Яскозал!
>>912530
Backbone, всего 2 зависимости - jquery и underscore/lodash. То бишь 3 скрипта. Не слушай этих (>>912532 >>912534) петухов, с этой хуитой тебе еще придется всякие редуксы и роутеры использовать с довольно ограниченным функционалом, плохо принимающим что-то кастомное.
Так-то ангулар первый очень хорош, но скоро его поддержку полностью дропнут, увы.

Ответы912538912544

15 Янв, 12:29 #121 #912536

>>912534
Смотрел, читал, к сожалению провёл тест на своём компьютере и он оказался даже медленнее чем jQuery...

Ответы912544

15 Янв, 12:31 #122 #912538

>>912535
Ну а вот "дропнут поддержку" и что? Мой же сайт будет нормально работать? Я вот тоже склоняюсь к первому ангулляру.

15 Янв, 12:35 #123 #912541

С сайта курса валют нужно утащить курс рубля. Например id: "USDRUB" и Rate: "59.6495". Но постоянно вылазит undefined. Я не могу cформатировать нормально нужный адрес к нужному столбцу.
Жабаскрипта не знаю почти.

https://jsfiddle.net/ojwkoLg4/2/

Ответы912542

15 Янв, 12:36 #124 #912542

>>912541
Есть же ЦБ РФ, который в xml отдаёт курс, нафиг тебе какой-то иностраный поставщик?

15 Янв, 13:13 #125 #912544

>>912535
>А получилось так, что все новые фичи и сахар джава перенимала из С# с опозданием на пару-тройку лет

например какие?

>>912536
>медленнее чем jQuery

лол, тогда пиши на жуквери

Ответы912545

15 Янв, 13:15 #126 #912545

>>912544
> например какие?
linq, многопоточность, async/await

Ответы912556

15 Янв, 13:18 #127 #912549

>>912511
>твой код, подправит
Ты ебанутый?
Как он исправит мой код у меня на сервере, блять?
Ты ебанутый.

Ответы912554912644

15 Янв, 13:23 #128 #912552

>>912054
> на своей недоподелке
И тут ты обосрался. Этой недоподелкой пользуются даже инженеры из гугла, тобишь квалифициронные спецы.

Ответы912765

15 Янв, 13:25 #129 #912554

>>912549
Кстати, ещё вопрос. Как он посмотрит, если пишу я, например, под NodeJS?

Ответы912644

15 Янв, 13:27 #130 #912556

>>912545
>linq, многопоточность, async/await

лол что? ты точно в курсе что такое ява?

Ответы912563

sage 15 Янв, 13:27 #131 #912557

>>912300
>>912284
Найс попытка, но после жс жаба кажется очень хорошим языком. Просто ты видимо из тех кто "вкатывается" и так яро защищаешь родное болотце. А если бы посмотрел на другие языки, то понял бы к чему запилили тайпскрипт и почему жс все называют говном.

Ответы912560912566

15 Янв, 13:29 #132 #912560

>>912557
>но после жс жаба кажется очень хорошим языком
Теперь я знаю, ради кого гугл запиливал дарт.
Слава богам Египта, эта хуитка не взлетела.

Ответы912574

15 Янв, 13:35 #133 #912563

>>912556
Да. Хочешь сказать в джаве не нужны многопоточность или асинхронщина просто потому что? За асинхронщину недавно вот adswizz задвигал, как у них на джаве все круто с ней.

Ответы912839

46 Кб, 939x582

15 Янв, 13:44 #134 #912566

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

Ответы912574912655

15 Янв, 13:45 #135 #912569

Зачем в express.js функция done(), откуда берется и как использовать? Видел в примерах passport.js

15 Янв, 13:50 #136 #912574

>>912566
>>912560
Собственно как и предполагалось, в этом треде одни мамкины вкатывальщики, ничего кроме жс не видавшие.

Ответы912575

165 Кб, 700x774

15 Янв, 13:55 #137 #912575

>>912574
>не жрал говно большой ложкой (программировал на джяве)
>жизнь не понял

Ответы912620

15 Янв, 13:58 #138 #912577

>>912477
Поэтому в js прототипное ооп, и нехуй изъебываться и пытаться применять парадигмы классового.

Ответы912579

15 Янв, 14:00 #139 #912578

>>912520
Вебассемблер человекочитаем.

15 Янв, 14:05 #140 #912579

>>912577
Нет, ты путаешь функциональное говно с КООП.
А для JS просто нужны приватные свойства/методы.

Ответы912587912590

15 Янв, 14:30 #141 #912587

>>912579
Что я путаю?
Ты знаешь что такое ПООП?

Ответы912588

15 Янв, 14:34 #142 #912588

>>912587
Конечно знаю, блять.

Ответы912591

15 Янв, 14:38 #143 #912590

>>912579
>А для JS просто нужны приватные свойства/методы.
Проиграл с джявадебса.

15 Янв, 14:39 #144 #912591

>>912588
Если знаешь, то о каких приватных свойствах\методах ты говоришь? Зачем они в ПООП? Ты уверен, что понимаешь суть ПООП?

Ответы912593

15 Янв, 14:41 #145 #912593

>>912591
Я говорю о класс-синтаксисе же.
И вообще, вон, предложение уже есть -- через решётку. И нормально, уже на черновой стадии.

Ответы912595912596

15 Янв, 14:46 #146 #912595

>>912593
В том-то и дело, что не нужен в js этот синтаксис.
В js не то что чего-то не хватает, как многие тут утверждают, а напротив, слишком много лишнего.
В js не нужна ни конструкция class, ни оператор new, ни множества еще прочих вещей.
Их впиливали чтобы закосить и облегчить жизнь перекатывальщикам. А перекатывальщикам все мало.

В js иная парадигма, не КООП, он динамичен, тут метапрограммироване во все поля. Но людям слишком сложно и они ноют что им нужно то, чего на самом деле тут не нужно.

Все, что вы просите, должно реализовываться для вас препроцессорами, трансляторами, а не самим языком. И если бы вы понимали что KISS это хорошо, то не ныли бы.

Ответы912598

15 Янв, 14:48 #147 #912596

>>912593
>через решётку
Куда полезнее было бы это использовать для Symbol.for()

object #ololo == object[Symbol.for('ololo')]

15 Янв, 14:53 #148 #912598

>>912595
>ни оператор new
И как ты предлагаешь вызывать функцию с NewTarget?
Через `Object.create(Constuctor.prototype)` и `Function#call`?
Ты ебанутый? Ты ебанутый.

Насчёт всего остального -- согласен, да. Но раз уж заговорили -- просто поддержал тему.
Да и мне всё-равно так-то. Всё-равно ещё года 3-4 не буду использовать ES6+, лол.

Ответы912603

15 Янв, 14:57 #149 #912603

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

Ответы912606

15 Янв, 15:00 #150 #912606

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

Ответы912608

15 Янв, 15:03 #151 #912608

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

Ты настолько туп, что не смог бы переделать bew Hui() в Hui.new() ?
Ты дебил?

Ответы912748

15 Янв, 15:26 #152 #912620

>>912575
Наоборот же, антоша.
> Не пробовал писать на нормальном языке объёмные проекты
> жизнь не понял
Так-то лучше.

Ответы912648

15 Янв, 16:11 #153 #912644

>>912549
Это ты ебанутый. Если код у тебя на сервере, то клиенту похуй, у него нет никакого доступа к твоему коду вообще, приватность методов тут никаком боком не относится. Изначальный посыл был, что "вот у меня есть два метода, но пользователю моей либы я хочу дать доступ лишь к одному из них".
>>912554
Никак не посмотрит, ты даже не понимаешь, о чём речь в разговоре шла.

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

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

Ответы912748

15 Янв, 16:17 #154 #912648

>>912620
>джява
>на нормальном языке

Ты уже из треда вытекаешь, Раджешь.

Ответы912657

15 Янв, 16:36 #155 #912655

>>912566
Одни джавадебилы говорят что это идеальный язык и делают из всего, к чему прикасаются джаву, даже из лиспа, даже из пайтона, да даже из аллаха.
Вторые говорят что джава не нужна и вообще не тру и ебашат веб на пыхе, перле или рубях. Съебитесь в свой загон, заебали по всей борде срать.

Ответы912657

15 Янв, 16:39 #156 #912657

>>912648
>>912655
Разговор был только за строгую типизацию (независимо от языка), а не за то, что "джява лучший язык", не фантазируйте.

Ответы912660

15 Янв, 16:41 #157 #912658

Ребят, я вчера проебался и не успел выучить все фреймворки, которые вышли, а ещё и за сегодня учить. Подскажите, что делать?

Ответы912665

15 Янв, 16:42 #158 #912660

>>912657
Строгую типизацию сожно прикрутить к любому языку ввиде препроцессинга. А ты попробуй выпилить строгую типизацию из языка, в который она вшита. Сможешь java использовать в качестве шелл-языка? В качестве интерактивного репла для управления какой-то среды? Удобно будет?
А js удобно. А чтобы на js писать что-то большое для поддержки, есть внешние инструменты.

Бритва Оккама.

Ответы912661912670

0 Кб, 512x512

15 Янв, 16:47 #159 #912661

>>912660
>java использовать в качестве шелл-языка
>интерактивного репла для управления какой-то среды
>А js удобно
лол

Ответы912666

15 Янв, 16:53 #160 #912665

>>912658
покупать гроб и ползти в известном направлении

Ответы912675

15 Янв, 16:54 #161 #912666

>>912661
Стикероеб, съеби в вкашечку.

15 Янв, 17:03 #162 #912670

>>912660
Ты из тех, кто пишет GTK-приложения на руби?
Я не слепой фанатик какого-то определённого языка и не пытаюсь пихать его там, где ему не место. Очевидно, что для шелла удобней использовать скриптовый язык.

Ответы912671

15 Янв, 17:04 #163 #912671

>>912670
>удобней использовать скриптовый язык
А js, блядь, какой?

Ответы912676

15 Янв, 17:10 #164 #912675

>>912665
>ползти в известном направлении
На рентген?

15 Янв, 17:11 #165 #912676

>>912671
В треде вроде как не шелл обсуждали. То, что JS скриптовый и подходит для шелл скриптов лучше, чем джава, ещё не означает, что на js приятно писать что-то сложнее туду-списка.

Ответы912678912680

15 Янв, 17:13 #166 #912678

>>912676
Тред посвящен языку, а не какому-то отедльному его применению.
JS отлично подходит в качестве встраиваемого, в отличии от.
Мой пост был о том, что из языка в котором зашито всё, нельзя это просто взять и выбросить, в отличии от того, что когда в языке тебе не хватает чего-то - прикрутить это.

15 Янв, 17:16 #167 #912680

>>912676
>что на js приятно писать
Ну у bash и powershell то синтаксиси очевидно приятнее!

Ответы912688912806

15 Янв, 17:19 #168 #912684

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

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

Ответы912685

15 Янв, 17:21 #169 #912685

>>912684
да.

Ответы912686

15 Янв, 17:22 #170 #912686

>>912685
Спасибо, добра.

0 Кб, 512x512

15 Янв, 17:30 #171 #912688

>>912680
дурачок не унимается и продолжает пихать жс всюду?
bash неплох, есть альтернативы, если ты неосилятор - это уже другой разговор

15 Янв, 17:45 #172 #912692

Блджад, как захватить WebGL Canvas в изображение?
Перепробовал все советы, один хуй на выходе прозрачное изображение (пнг), что в Хроме, что в FF.

Вот что делаю, например, на этой странице: http://learningwebgl.com/lessons/lesson01/index.html

const glctx = document.querySelector('canvas').getContext('webgl', {preserveDrawingBuffer: true})
glctx.canvas.toDataURL()

Пробовал через readPixels, как сказано тут: http://stackoverflow.com/a/18804083
Получается та же хуйня.

Ответы912707

15 Янв, 18:16 #173 #912707

>>912692
Потому что в твоих примерах при рисовании контекст был создан без {preserveDrawingBuffer: true}

Сохрани эту свою страницу на комп, допиши там в функции initGL {preserveDrawingBuffer: true}
и все заработает.

Ответы912715

15 Янв, 18:28 #174 #912715

>>912707
Блджад, и правда заработало.
Спасибо!
Выходит, зафиксировать изображение из webgl канваса можно только передав соответствующий аргумент в получение контекста на этапе инициализации?

Ответы912718

15 Янв, 18:36 #175 #912718

>>912715
Ну, а иначе буффер изображения не хранится в озу, оно в видеопамяти же. Откуда его брать, чтобы тебе отдать в виде пикчи?

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

Ответы912722

15 Янв, 18:40 #176 #912722

>>912718
Ясно, спасибо!

15 Янв, 19:25 #177 #912748

>>912608
>переделать bew Hui() в Hui.new()
Пиздец. Даун, не понимающий ООП. Спешите видеть!

>>912644
>Это ты ебанутый.
Нет, ты
Слушай, анон, в чём проблема? Приватные методы - хороший способ убрать то, что не нужно видеть. Я-бы с удовольствием перепилил некоторые функции для расчётов и пр., чтобы их не было видно вообще во внешнем коде.
Это хорошое дополнение к языку, приучает контролировать геттерами-сеттерами всё важное и не давать добраться юзеру к чему-то важному.

Ответы912757912758912763912959912983

15 Янв, 19:33 #178 #912757

>>912748
>Пиздец. Даун, не понимающий ООП. Спешите видеть!
Посмотрели на тебя, что дальше?

15 Янв, 19:35 #179 #912758

>>912748
Сосачую этого, синглоёб в треде.

Ответы912763

несовместимость версий 15 Янв, 19:41 #180 #912762

Поясните, почему так расплодились уёбищые быдло-ориентированные пакетные менеджеры вроде composer и npm, где все зависимости кладутся в подпапку, вместо того, чтобы храниться и обновляться централизованно по принципу "1 пакет на всю систему, а если где-то в зависимостях обнаружилась несовместимость, то вы идёте и фиксите её, а не тащите 100500 версий пакетов ради какого-то брошенных пакета, на который разраб положил хуй". Вы понимаете вообще, что если вы позволите разрабам не устранять несовместимости, их никто не будет устранять, потому что "и так работает, работает - не трожь, а на самом деле мне просто лень копатся в чужом говнокоде", хотя там фиксить обычно от силы пару строчек, у вас будут копится пакеты, которые не совместимы с новыми версиями других пакетов, которые в свою очередь будут зависить от старых и потенциально уязвимых версий других пакетов. Какой дебил мог это придумать, какой дебил мог это поддержать и как вы собираетесь эту проблему решать?

42 Кб, 1094x372

15 Янв, 19:45 #181 #912763

>>912748
>>912758

Тред полон идиотов.
Продолжайте жить в манямирках.

Ответы912771913679

15 Янв, 19:49 #182 #912765

>>912552
Эти "квалифицированные спецы" будут писать на том, на чем им скажет писать начальство.

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

15 Янв, 19:50 #183 #912766

>>912506
съеби нахуй, ты даже не понял о чем я говорю

15 Янв, 20:00 #184 #912771

>>912763
Может, тогда ещё убрать `instanceof` и `in`? И циклы все в методы переделать.
Пиздец даун. Операторы в JS нужнее тебя в этом треде.

Ответы912772912778

15 Янв, 20:04 #185 #912772

>>912771
Если бы ты был хоть чуть-чуть прошаренее, то знал бы, что половина операторов и так перегружаются с помощью мета-методов. И твой instanceof ни что иное как obj[Symbol.hasInstance]()

Так что продолжай пососасывать причмокивая.

Ответы913221

15 Янв, 20:30 #186 #912778

>>912771
>Может, тогда ещё убрать `instanceof` и `in`? И циклы все в методы переделать.
Охуенно было бы, кстати. После этого останется только this выпилить, === переделать в == и получится более-менее нормальный язык.

15 Янв, 21:08 #187 #912795

Есть массивы (arr), и есть нечто (smth), что сделано на основе массива (точнее, оно - специально сформированный массвив. Нужно написать функции isArray и is_SMTH, при этом isArray( arr ) === true, isArray( smth ) === true, но is_SMTH( arr ) === false и is_SMTH( smth ) === true. Есть идеи?
inb4 переделай на объекты
Там та же самая проблема будет, только с объектом вместо массива.

Ответы912799

15 Янв, 21:12 #188 #912799

>>912795
Object.getPrototypeOf

Ответы912863

15 Янв, 21:17 #189 #912800

Сап, аномач. Как в жс можно целое число к float привести?
Например, у меня есть 412, как его сконвертировать в 4.12?
Т.е. брать последние 2 знака как знаки от точки.
550 = 5.5, 5155 = 51.55 и т.п.

Пока только идея конвертировать в строку, добавлять . на 3 с конца позицию, это нормально?

Ответы912809912810912849913037

15 Янв, 21:42 #190 #912806

>>912680
> powershell то синтаксиси очевидно приятнее
Нет, повершелл говнина

15 Янв, 21:44 #191 #912809

>>912800
Любое целое число в js и есть float, в v8 точно так было.

Ответы912811

15 Янв, 21:45 #192 #912810

>>912800
> у меня есть 412, как его сконвертировать в 4.12?
Стоп, в школе деление уже не проходят?

Ответы912836

15 Янв, 21:45 #193 #912811

>>912809
ТЗ не читай, сразу отвечай.

15 Янв, 22:57 #194 #912836

>>912810
Спасибо, и правда тупо

15 Янв, 23:08 #195 #912839

>>912563 хочу сказать, что не понимаешь о чем говоришь.

linq в java нет и не было
многопоточность всегда была
async/await нет, вообще не знаю что это за шняги и зачем она нужна

Ответы912981

15 Янв, 23:36 #196 #912849

>>912800
Тестовое выполняешь?

71 Кб, 1080x918

43 Кб, 519x931

16 Янв, 00:20 #197 #912863

>>912799
Спасибо.

16 Янв, 00:21 #198 #912865

Зачем учить весь жаваскрипт, если есть jquery?

Ответы912867912979913222

16 Янв, 00:26 #199 #912867

>>912865
чтобы не сидеть на jquery в 2007

Ответы912870912874912876

16 Янв, 00:28 #200 #912870

>>912867
У него версия апнулась в прошлом году.

16 Янв, 00:37 #201 #912874

>>912867
Do more, write less

16 Янв, 00:41 #202 #912876

>>912867
80% сайтов, в том числе самые популярные, используют jquery, остальные 20% старое говно.

Ответы912966

16 Янв, 05:24 #203 #912959

>>912748
В том же луа, например, все через Class.new() и хуячат, потому что по-другому нельзя, и ничего, живут.

>и не давать добраться юзеру к чему-то важному.
Библиотеку свою спрячьте, блин.

>хороший способ убрать то, что не нужно видеть.
Если не хочешь чего-то видеть — не смотри. Ни одного конкретного аргумента, кроме как "не хочу", "спрятать", "ооп", "правильный код" так и не прозвучало. Что такого хорошего-то в ограничении пользователя, особенно когда он может это обойти, если совсем надо? Задокументируйте, обозначьте — дальше пусть сам ебётся, если что-то сломает используя "приватное". Я уже слышу запах своего пердака из будущего, когда приватность введут.
Вот есть OGVKit на ифон, webm проигрыватель. Там есть методы для показа и скрытия кнопок управления. И они приватные, блядь, вызывается только по внутренным событиям. Ну вот нахуя? Мне надо было в нужные мне моменты прятать или показывать, пришлось копипастить код тех функций в свой контроллер (даже к приватным переменным обращений не было).
В питоне в xlwt, например, была возможность доступа к экселевским листам лишь по названию. А мне по индексу надо или просто по всем листам пройтись, а массив листов "приватный" (к счастью, в питоне это легко обходится). В итоге через workbook._Workbook__worksheets[idx] и приходилось лазить. Но тут имя класса указано, а это не очень хорошо и может принести проблем.
Я уверен, у многих найдутся такие примеры, когда что-то полезное зачем-то прячут, вынуждая костыли пилить.

В общем, похуй, чего спорить.

16 Янв, 07:42 #204 #912966

>>912876
>80% сайтов, в том числе самые популярные, используют jquery
L E G A C Y

E
G
A
C
Y

Ответы913022

16 Янв, 09:38 #205 #912979

>>912865
> Зачем учить всю математику, если есть калькулятор?

Ответы912990

16 Янв, 09:44 #206 #912981

>>912839
> что не понимаешь о чем говоришь
Я сравниваю. В С# многие вещи сделаны на голову продуманнее и удобнее. Только в 1.8 добавили лямбды например.
> вообще не знаю что это за шняги и зачем она нужна
Действительно, зачем в приложении может понадобится асинхронность?
В общем этот холивар не имеет особого смысла.

Ответы913019

16 Янв, 09:45 #207 #912983

>>912748
> Даун, не понимающий ООП
Фанат Алана Кея, ты?

Ответы913038

16 Янв, 10:23 #208 #912990

>>912979
Но ведь математика js-программисту реально не нужна.

Ответы912992912993913037

16 Янв, 10:26 #209 #912992

>>912990
А как же Веб Гэ Эль?

16 Янв, 10:27 #210 #912993

>>912990
Не умеешь в аналогии - иди нахуй.

Ответы913040

16 Янв, 11:35 #211 #913019

>>912981
>Я сравниваю. В С# многие вещи сделаны на голову продуманнее и удобнее. Только в 1.8 добавили лямбды например.

Как ты можешь сравнивать ява и c#, если ты не имеешь представления о яве и несешь какой-то бред?

>Только в 1.8 добавили лямбды например.

и? ты хочешь, что сказать, что лямбды придумали специально для c#? ты хочешь сказать, что раньше нельзя было писать код лямбд?

>Действительно, зачем в приложении может понадобится асинхронность?

ты утверждаешь, что в яве нет асинхронности? Ты что несешь вообще?

16 Янв, 11:36 #212 #913022

>>912966 этот ваш ангуляр теперь тоже легаси

Анон, подскажи 16 Янв, 11:40 #213 #913025

Как вообще цивилизованно можно решить проблему с невозможностью задать в классе свойство-значение?
Вот я, допустим (https://jsfiddle.net/bjg5Lv7L/), решил сделать класс User, каждому экземпляру которого давался бы свой айдишник от 0 до +∞.
Лучше ничего не придумал, чем по совету Кантора задать прототипу а-ля "внутреннее" свойство.
Так вот, как бы данную проблему решил прокаченный анон, или я накорябал максимум, который (пока) можно сделать?

Ответы913026913041913042913043

16 Янв, 11:42 #214 #913026

>>913025
Быстрофикс: ссылка без запятой, конечно же https://jsfiddle.net/bjg5Lv7L/

16 Янв, 12:12 #215 #913037

>>912990
Конечно. Особенно это заметно >>912800

16 Янв, 12:14 #216 #913038

>>912983
Так он как раз не понимает постулатов Кея.
Он же из переделанной (new Class) конструкции в (Class.new) увидел сингелтон, а не посылку сообщения объекту.

16 Янв, 12:15 #217 #913040

>>912993
Для этого нужно абстрактное мышление.
90% обитателей /pr в него не умеют.

16 Янв, 12:17 #218 #913041

>>913025
Лол: https://codepen.io/anon/pen/xgEWJY?editors=0010

16 Янв, 12:17 #219 #913042

>>913025
> как бы данную проблему решил прокаченный анон
Не выебывался с сахаром, и писал бы все на страх добрых прототипах и конструкторах отдельно.
Для консистентности.

16 Янв, 12:19 #220 #913043

>>913025
>User.prototype._quantity++;
То, что ты в конструкторе дергаешь свойство их прототипа, а не из образешься к нему из самого инстанса, говорит о том, что ты вообще не понимаешь прототипную объектную модель

Ответы913045913063

16 Янв, 12:26 #221 #913045

>>913043
Поясни, пожалуйста, почему нельзя так делать?
не-тот-анон

Ответы913048913069

16 Янв, 12:37 #222 #913048

>>913045
> почему нельзя так делать?
Менять поле прототипа в экземпляре? Вот уж действительно.

16 Янв, 12:59 #223 #913056

http://www.2ality.com/2017/01/import-operator.html
Охуенно!

16 Янв, 13:12 #224 #913063

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

Ответы913065

16 Янв, 13:14 #225 #913065

>>913063
Нахуя тебе этот твой счетчик _quantity в протипе инстансов?
Почему ты не сделаешь его статическим свойством самого конструктора User? Или ты не знаешь, что такое стические свойства, и что функции это тоже объекты?

Ответы913066

16 Янв, 13:17 #226 #913066

>>913065
Для это придется отказаться от использования сахара. Я же потому и спрашивал, что class не дает возможности устанавливать свойства-значения.

Ответы913070913074

16 Янв, 13:19 #227 #913069

>>913045
Менять свойства в прототипах вообще - хуевая практика, вносящая путаницу. Прототипы хранят методы. которые у всех инстансов будут одинаковыми, и если свойства - то со значениями по умолчанию.

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

16 Янв, 13:21 #228 #913070

>>913066
Ты дурак? Ты итак отказался от сахарах, и пишешь в протип мимо сахара.
Замени свой user.protytype.q на user.q

И иди учить js заново.

Ответы913074

16 Янв, 13:25 #229 #913074

>>913066
>>913070
Если тебе так лень инициализировать статическое свойство строкой ниже декларирования класса, используй замыкание на здоровье. Но для одного свойства, это вполне себе оверхед. https://jsfiddle.net/erx7fbhk/

Ответы913078

16 Янв, 13:36 #230 #913078

>>913074
https://codepen.io/anon/pen/EZgLqz?editors=0010

ES5 дикаратар-стайл, все по Кантору.

Ответы913121

16 Янв, 14:38 #231 #913121

>>913078 охуенная читаемость кода. лол

16 Янв, 17:33 #232 #913221

>>912772
>половина операторов и так перегружаются с помощью мета-методов
Которые, естественно, не нужны.

16 Янв, 17:37 #233 #913222

>>912865
Зачем учить язык, если есть раскладка на клавиатуре?

16 Янв, 23:53 #234 #913463

Аноны, подскажите как сделать аккардион с неизвестным количеством подменю. Делаю без джейквери, фреймворков и библиотек.

Ответы913472

17 Янв, 00:04 #235 #913472

>>913463
Просто берешь и делаешь без задней мысли.

Ответы913481

17 Янв, 00:09 #236 #913481

>>913472
ага спасибо.
я подумаю и сделаю, а ты и дальше продолжай сосать хуи.

Ответы913495

17 Янв, 00:22 #237 #913495

>>913481
У тебя какие-то проблемы с сосанием хуёв?

Ответы913530

17 Янв, 00:46 #238 #913530

>>913495
ты правда хочешь говорить в жс треде о сосании хуев?

17 Янв, 12:16 #239 #913676

Посоны, поясните за геймдев на JS.
Как оно вообще?
В том плане, приятно ли на жс игростроем заниматься, при условии, что сам процесс разработки на жс очень доставляет.
Описание логики нуднее, чем, скажем, на Lua?

Правильно ли я понимаю, что все современные игровые движки на жс задействуют canvas?

Ответы913684

17 Янв, 12:28 #240 #913679

>>912763
>ES5 в 2к17.

Ответы913683

17 Янв, 12:37 #241 #913683

>>913679
>в 2к17 не знать, что у стрелочных функий нельзя перебиндить this

17 Янв, 12:39 #242 #913684

>>913676
>Правильно ли я понимаю, что все современные игровые движки на жс задействуют canvas?
Да.

Об остальном не скажу, не знаю что для тебя приятно.

Ответы913686

17 Янв, 12:48 #243 #913686

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

17 Янв, 17:44 #244 #913841

Ангуляробояре, кто работал с ui-router? Есть простой способ превратить url в state?
Суть в том, что когда я гружу приложение на роуте '/' и потом перехожу из него на '/url', то всё норм. Но если сразу попытаться зайти на '/url' или обновить страницу, будучи на нём, то ничерта не грузится. Не срабатывает даже перенаправление на '/' с неправильного роута.

17 Янв, 17:59 #245 #913850

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

Ответы913852913932

17 Янв, 18:04 #246 #913852

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

Ответы913856

17 Янв, 18:13 #247 #913856

>>913852
Понимаю, но в воспитательных целях надеюсь я не зря потратил время =) Спасибо за ответ

Ответы913870

17 Янв, 18:46 #248 #913870

>>913856
Чтобы начать изучать Js, тебе нужен просто курс основ программирования. Понимать, как работают циклы, ссылки, функции. И то, это все необязательно, в учебниках Js это в любом случае разжевывается.
Другой вопрос - для чего ты собираешься использовать Js. Если для веба (а если не для веба, то это странно), то хорошо бы заштудировать html и css, благо, эти две вещи простые как жопа.

Ответы913874913883

17 Янв, 19:00 #249 #913874

>>913870
>а если не для веба, то это странно

А что скажешь про electron.js?

Ответы913885

17 Янв, 19:09 #250 #913883

>>913870
Понял, спс. Да для веба, html и css точу на htmlacademy.

17 Янв, 19:11 #251 #913885

>>913874
Примеров использования js где-нибудь кроме веба множество, но нахуя?

Ответы913898

17 Янв, 19:24 #252 #913898

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

Ответы913936

219 Кб, 505x468

17 Янв, 19:49 #253 #913932

>>913850
JavaScript неудачный вариант для новичка. Функции как объекты, объекты как массивы, запутанная схема кастования типов при сравнении: https://www.ecma-international.org/ecma-262/5.1/#sec-11.9.3 , хаки для вещей, которые в нормальных ЯП реализованы искаропки: http://stackoverflow.com/questions/3446170/escape-string-for-use-in-javascript-regex/6969486#6969486
Отсюда и обилие всяких is-function.js и is-number.js

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

Ответы913955914145

17 Янв, 19:52 #254 #913936

>>913898
> если ты очень любишь Js, то
ты долбоёб

146 Кб, 1209x806

179 Кб, 1280x960

174 Кб, 864x1296

17 Янв, 19:54 #255 #913938

Профи, поясните за Dojo Toolkit. Я смотрю на него и вижу, что из коробки есть многие фичи, которые в современных фреймворках типа Angular и Ember появились относительно недавно. Почему он так непопулярен? Пишется ли сейчас какой-то софт на нём?
Алсо, дополнительный вопрос: пишу на Python/Django, хочу делать фронт для своего проектика, который задуман как SPA. Чем бы вы пользовались на моём месте? Таблицы, кнопки, тулбары и деревья в проекте будут, а на ExtJS денех нет (проект не планируется быть OpenSourсе, а пиратить убеждения не позволяют).
[SPOLER]Скидываю лолей авансом[/SPOILER]

Ответы913944913965913972913977914057

17 Янв, 19:57 #256 #913944

>>913938
Очевидный реакт очевиден.

17 Янв, 20:09 #257 #913955

>>913932
>пикрил
Ох уж этот реддит.
Не поленился, нашел пекедж:
https://github.com/tjmehta/is-positive-integer

В package.json - зеродеп и три дев зависимости для тестирования.
Сам пекедж состоит из одного файла и дюжины loc.

Ответы913963

17 Янв, 20:16 #258 #913963

>>913955
Блять, у этой хуйни лайков больше, чем во всех моих репах вместе взятых. Нужно пересаживаться на JS и клепать is-string.js

17 Янв, 20:20 #259 #913965

>>913938
> Почему он так непопулярен?
Потому же, почему и эмбер. Сложный и тяжелый. Хотя на самом деле просто нимодна

17 Янв, 20:25 #260 #913972

>>913938
> Чем бы вы пользовались на моём месте?
Ember/Angular

17 Янв, 20:28 #261 #913977

>>913938
Rax же. Алибаба хуйню не посоветует.
Тем более, реакто-совместим. Если что, пересядешь на другой стул.

https://twitter.com/survivejs/status/819811229690535936

17 Янв, 21:53 #262 #914057

>>913938
Ты должен этому треду еще лолей

Ответы914893

17 Янв, 23:14 #263 #914145

>>913932
>учебник по алгоритмам
Посоветуйте самый наигоднейший.

Ответы915018

79 Кб, 1658x922

17 Янв, 23:56 #264 #914176

Вся суть фреймворо-вкатывальщиков, которым ванила не нужна.

Ответы914252914291914301

18 Янв, 00:33 #265 #914191

Ананасы, помогите пожалуйста. Сам вопрос на stackoverflow, но там чувак предложил вариант на чистом JS, что мне не подходит, т.к. хочу сделать spa полностью на ангуляре.
http://ru.stackoverflow.com/questions/616064/angularjs-обработка-input

sage 18 Янв, 00:35 #266 #914193

>>911262 (OP)
>JavaScript
Гавно для тп.

Ответы914199

18 Янв, 00:46 #267 #914199

>>914193
У тебя есть что-нибудь получше?

Ответы914202914214

18 Янв, 00:47 #268 #914202

>>914199
luajit

Ответы914234

18 Янв, 01:00 #269 #914209

Ананасы, посоветуйте сборку реакта с вебпаком. Никак не могу его прикрутить к своей системе, хоть убей.
Поднимает, но картинки не подключает и роуты не работают. Урл меняется, вьюха - нет.
Нифига не понимаю суть вебпака этого.
Может у кого-нибудь простейший проектик есть на react+scss+webpack?

Ответы914215914221

18 Янв, 01:13 #270 #914214

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

Ответы914233

18 Янв, 01:15 #271 #914215

>>914209
Начни носить брюки в обтяжку и жахаться в срачельник и все сразу заработает. Фраентенд чует, что ты не из своих и не дается тебе.

18 Янв, 01:27 #272 #914221

>>914209
https://github.com/mxstbr/react-boilerplate

18 Янв, 01:58 #273 #914233

>>914214
>Для тебя нет.
Значит, нет вообще.

</thread>

18 Янв, 02:01 #274 #914234

>>914202
>lua
Нет, спасибо. Этот синтаксис заставляет меня блевать.

128 Кб, 1024x768

18 Янв, 02:46 #275 #914251

А насколько ООП востребовано в веб-разработке? Во фронт-энде, например? Было вот такое тестовое - хз, что там отвечать, по-идее. Я бы тупо через ng-repeat ангуляром вывел или чем-то подобным в реакте. Нах там классы нужны и методы? Это ж комменты простые. Или это все так строят архитектуру? КЛАСС APP, У НЕГО ЕСТЬ КЛАССЫ ФУТЕР И ХЭАДЕР...
Покажите простой пример ООП, который реально встречается, а не Animal -> Cat.
На самом деле плюсую к тем, кто выше писал, что проблема не найти обучающие материалы, а найти материалы, которые РЕАЛЬНО используются или, хотя бы, близки к этому.
Один раз вообще статью читал, где фронтам рекоммендовали выучить сколько кб ссылка занимает и задрочить алгоритмы с обходами бинарных деревьев. Где, блеать, в обычном SPA, это может пригодиться???

Ответы914296914315914337914343914361914389

18 Янв, 02:53 #276 #914252

>>914176
анон, объясни прикол, я сам вкатывальщик только в реакт

Ответы914255

18 Янв, 03:19 #277 #914255

>>914252
Гавнакод на ангуляре. Писала макака (другие на ангуляре и гавнариакте не пишут). Разъяснять лень.

18 Янв, 06:14 #278 #914291

>>914176
Проиграл с кастинга в строку и последующих сравнений.

18 Янв, 06:44 #279 #914296

>>914251
>Где, блеать, в обычном SPA, это может пригодиться???
Никто не спорит, что создать виджет комментариев легко и без применения ООП.
Однако создание изолированного класса [здесь] сродни компонентному подходу, т.е. повысит и упростит реиспользуемость кода в будущем.
Так что ООП в фронт-энде не лишено смысла.

18 Янв, 07:29 #280 #914301

>>914176
Это же шутка какая-то? Айди даётся по порядковому номера элемента в массиве (зачем вообще такой айди нужен, это же индекс?), но при этом элеметы оттуда могут удаляться, то есть получится несколько элементов с одинаковыми айди.

Ответы914303914351914357914898

13 Кб, 860x166

18 Янв, 07:51 #281 #914303

>>914301
Спасибо Абу за спам-лист.

Ответы914336915012

18 Янв, 08:54 #282 #914315

>>914251
ммм UML, OOP
Универом попахивает)

121 Кб, 628x421

18 Янв, 09:38 #283 #914336

>>914303
Абу пидор, двачую

18 Янв, 09:40 #284 #914337

>>914251
> в обычном SPA
Ну если для тебя смысл жизни это лепить круды, то можешь забить вообще на теорию.

Ответы914353914358

18 Янв, 09:45 #285 #914343

>>914251
>насколько ООП востребовано в веб-разработке?
НИНУЖНО
во фронтеде востребовано ФП, в частности FRP
ООП - для отсталых яванских макак

18 Янв, 09:58 #286 #914351

>>914301
Нет, не шутка.

18 Янв, 09:59 #287 #914353

>>914337
> Ну если для тебя смысл жизни это лепить круды
Это же 95% тасков

18 Янв, 10:04 #288 #914357

>>914301
Если бы ты присмотрелся, о понял, что унео там с айди не все так просто даже. Они у него вынлядят как
011
021
031
...
0441
0451

Ответы915012

18 Янв, 10:05 #289 #914358

>>914337
> фронтенд
> лепить круды

Ответы914364

18 Янв, 10:11 #290 #914361

>>914251
В твоем задании хотели, чтобы ты рассобачил сам интерфейс на MVC, а модели попривязывал к предметным сущностям - пользователь\комментарий\етк

Ответы914366

18 Янв, 10:17 #291 #914364

>>914358
Ну окай, интерфейсы к крудам

18 Янв, 10:21 #292 #914366

>>914361
Комментбокс на MVC паттерне? Ёбу дал?
Тогда из него вырастет достойный продолжатель дел TodoMVC.

18 Янв, 11:04 #293 #914389

>>914251
Спасибо за публикацию нашего ТЗ на дваче. Мы вам перезвоним

18 Янв, 12:56 #294 #914449

Господа, у меня проблемы с гуглением. Вот, у массива есть метод map. Возвращает новый массив с результатами работы функции-коллбэка. Если ли нечто похожее для объектов (ассоциативных массивов)? Типа вот такого, только еще чтобы с ключами можно было что-то делать https://jsfiddle.net/jezh5vgm/

Ответы914450914453914457

18 Янв, 12:57 #295 #914450

>>914449
Object.keys/Object.values

Ответы914457

18 Янв, 13:08 #296 #914453

>>914449
Написать самому - никак? Это же легко.

Ответы914484

18 Янв, 13:12 #297 #914457

>>914449
>>914450

const mapping = {
hello1: 1,
hello2: 2,
hello3: 3
}

Object.keys(mapping).reduce((o, key) => (o[key] = `${mapping[key]} darling`, o), {})

18 Янв, 13:36 #298 #914474

Товарищи, я написал небольшую либу на ванильке, задача которой - строить DOM в новом окне (через window.open()) и нет, это не попап, который открывает вкладки в бекграунде.

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

Ответы914478914547

18 Янв, 13:45 #299 #914478

>>914474
>и нет, это не попап, который открывает вкладки в бекграунде
Проиграл.
window.open это и есть попап, мань.

Ответы914485

angular bender 18 Янв, 13:49 #300 #914481

херня вопрос

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

как сделать так, чтобы список категорий получить один раз и больше к нему не обращаться?

Ответы914560

18 Янв, 13:51 #301 #914484

>>914453
Не хотелось бы изобретать велосипед

18 Янв, 13:52 #302 #914485

>>914478
>window.open это и есть попап, мань.
Да здесь нечему проигрывать.
Имел в виду не рекламный скрипт.

Ответы914489

18 Янв, 13:54 #303 #914489

>>914485
Браузер не различает семантику содержания.
Если он настроен блокировать всплывающие окна, он их будет блокировать. В отличии от вкладок.

Ответы914493

18 Янв, 14:07 #304 #914493

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

Я смотрю, Жасмин умеет отлавливать ивенты, в т.ч. открытие окна.
Может ли она чекать дом в порожденном окне?

Ответы914542

18 Янв, 14:55 #305 #914542

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

18 Янв, 15:01 #306 #914547

>>914474
> написал небольшую либу на ванильке, задача которой - строить DOM в новом окне
Нахуя?

Ответы914629

18 Янв, 15:06 #307 #914560

>>914481
Запрос в момент инициализации контроллера?

Ответы914601

18 Янв, 15:30 #308 #914585

Аноны, поясните, как развивался веб вкратце? Или где можно об этом почитать/посмотреть?
Например:
1. Тупо были файлики index.html, style.css, script.js, где и была вся логика. Написал, закинул новые на сервак - всё работает. По желанию - модульность в отдельные файлики.
2. CRM, CMS - ????
3. Пишем на фреймворках, собираем галпами и паками, получаем готовую сборку, которую и деплоим

Собственно, проблемы с п.2, т.к. не застал того момента и не особо шарю, как ээти ваши CRM/CMS работают. К чему они относятся вообще?

Ответы914600

18 Янв, 15:48 #309 #914600

>>914585
Сначала был голый html, даже без css. Все форматирование происходило за счет семантики тегов b, i, p, blockquote и так далее. За стиль оформления отвечал сам браузер.
Потом появился css, который вначале был куда плачевнее нынешнего.
Только позднее, спустя почти пять лет начала существования гипертектста в браузерах появился js, но и тогда он не был призван для какой-то там логики. Он использовался для все того же фактически оформления страниц.

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

Ответы914619

18 Янв, 15:49 #310 #914601

>>914560
да

18 Янв, 16:22 #311 #914619

>>914600
Спасибо :3 Прочитал с интересом

18 Янв, 16:42 #312 #914629

>>914547
>Нахуя?
Костыль для того, чтобы перекомпоновать/изменить дом с исходной страницы с целью последующего преобразования (сохранение, печать и т.д.)

Ответы914640914682

18 Янв, 17:17 #313 #914640

>>914629
iframe чем не угодил?

Ответы914657

18 Янв, 17:49 #314 #914657

>>914640
Не хотел изменять контент в донорской странице, хотя... Это трезвая идея: создать фрейм 1х1, поместить в необходимом порядке контент во фрейм, и в финале заинжектить скрипт с триггером onload, как тут: http://plungjan.name/SO/testprintiframe.html
Будет работать?

Ответы914663914757

18 Янв, 17:54 #315 #914663

>>914657
Пиздец ты поехавший. Есть же data, blob-ы всякие для сохранения/отображения. Есть медиатип для стилей, которые будут использоваться при печати.
Зачем хаки делать?

Ответы914702

18 Янв, 18:12 #316 #914682

>>914629
> перекомпоновать/изменить дом с исходной страницы с целью последующего преобразования
Йобаный стыд, чем тебе DocumentFragment не угодил, что свой велосипед понадобился?

Ответы914702

18 Янв, 18:53 #317 #914702

>>914682
>DocumentFragment
Причем здесь DocumentFragment?

Задача следующая:
Выбрать фрагмент исходного дома -> произвести манипуляции над выбранным узлом -> добавить новые элементы -> подготовить к экспорту/печати.

Вопроса как это сделать у меня нет, уже все сделал тупо клонируя ноду и, при необходимости, добавляя новые элементы .appendChild'ом. Но вот анон годную идею подкинул, что вовсе нет необходимости вставлять узел в новое окно, достаточно все это запихать в iframe (который потом нужно удалить, да).
Вопрос изначально состоял в том, как лучше провести тестирование полученного дома, не прибегая к очевидным фантомам. Сейчас, конечно, можно будет вооружиться любым фреймворком, если все содержимое будет в iframe.

>>914663
>Есть же data, blob-ы всякие для сохранения/отображения.
Необходимо не просто сохранить исходный фрагмент. Уже накостылили до меня таких приблуд, типа html2canvas, нужно именно провести определенные манипуляции над имеющимися элементами и добавить новые. CSS @media решает проблему только отчасти.

>Йобаный стыд
>ты поехавший

Ну стыдно немножко, да, но решение под чужие нужды.

Ответы914715914766

Аноним 18 Янв, 19:05 #318 #914708

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

Ответы914718

18 Янв, 19:14 #319 #914715

>>914702
Так и зачем тебе вообще отдельный браузерный контекст для этого?
Клонируешь ноду в документфрагмент. Производишь над ней манипуляции. Вставляешь документ фрагмент в отдельный слой (который если хочешь, можешь убрать за границу видимости). К этому слою применяешь css с медиакуарес для печати (чтобы на печать выходил только он). И всё.

Ответы914745

18 Янв, 19:15 #320 #914716

Кто знает, как вместо ответа сервера json-заглушки ставить?
Например, в jQuery или Angular?
Ведь надо, чтобы http.get вернул содержимое файла, а не реально выполнялся

Ответы914719

18 Янв, 19:15 #321 #914718

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

Вопросы учить нормально задавать.

18 Янв, 19:16 #322 #914719

>>914716
Переопределить XMLHttpRequest

Ответы914721

18 Янв, 19:19 #323 #914721

>>914719
Типо того?
var xhr = new XMLHttpRequest();
xhr.open('GET', 'moi_igri.json', false);
xhr.send();

Ответы914734914736

18 Янв, 19:41 #324 #914734

>>914721
Что ты написал?
Ты же хотел перехватывать запросы и возвращать поддельные данные, вместо реальеых запросов.
А ты чего делаешь?
Расскажи мне, что делает твой код, по-твоему.

Ответы914803

18 Янв, 19:43 #325 #914736

>>914721
это называется, что люди пришли в динамический язык и не знают, что такое динамика.

18 Янв, 19:55 #326 #914745

>>914715
Я понял тебя, анон.
Но одно из требований - обеспечить возможность сохранения исходных стилей при возможности (опция).
В предложенном тобой способе, когда кусок склонированной ноды остается в одном контексте с донором, будет проблематично реализовать такой механизм.
Можно, конечно, запплаить стиль, при котором будет сокрыто все, кроме склонированного узла, но затем нужно будет запплаить стиль, который бы отображал склонированную ноду, насколько это возможно, похожей на исходную.
К тому же, появляется неиллюзорная вероятность возникновения в одном контексте нескольких элементов с идентичным идентификатором, а это уже не комильфо.
Посему отдельный контекст - не блажь, но необходимость.

18 Янв, 20:07 #327 #914757

>>914657
контекст iframe работает по тем же принципам что и window.open (почти).
тоесть ты точно также кимпортируешь склонированную тобою ноду, только в документ не в окне а в ифрейм. инжектишь туда какие-хочешь скрипты, обмениваешься с ним сообщеняиями на здоровье. он же локальный.

Ответы914765

18 Янв, 20:11 #328 #914765

>>914757
Да-да, спасибо.
Я так и сделаю.
Просто объяснил анону, который предложил в одном оконном контексте производить манипуляции с склонированной нодой и аттачить их в донорский документ, почему такой вариант не подходит.

18 Янв, 20:11 #329 #914766

>>914702
> >Есть же data, blob-ы всякие для сохранения/отображения.
> Необходимо не просто сохранить исходный фрагмент. Уже накостылили до меня таких приблуд, типа html2canvas, нужно именно провести определенные манипуляции над имеющимися элементами и добавить новые. CSS @media решает проблему только отчасти.
> html2canvas
Это же вообще скриншотер DOMа. Что-то я совсем потерял представление о твоей задаче

18 Янв, 21:07 #330 #914803

>>914734
Не знаю, я с W3School скопировал, там пример на эту тему был.
Ну создаём новый объект запроса и кидаем его в xhr переменную. Потом открываем запрос GET и передаём туда файл, вместо урла, false для чего-то там.
А потом отправляем. Всё.

Ответы914808

18 Янв, 21:17 #331 #914808

>>914803
Ты сам себе противоречишь. Сначала ты не хотел делать запросы, а теперь делаешь.

>Не знаю, я с W3School скопировал
В общем, удачи.

485 Кб, 1536x2048

175 Кб, 768x948

66 Кб, 546x799

72 Кб, 1600x860

18 Янв, 23:33 #332 #914893

>>914057
Зацените помимо лолей, что я пишу на Dojo. Рендеринг шаблонов - на Django. Возможно, кто-то поссыт мне в лицо сейчас, но пока пусть будет так.

18 Янв, 23:43 #333 #914898

>>914301
Использование глобальных переменных вместо сервисов во все поля.
$scope.todolist = list;

19 Янв, 00:46 #334 #914936

Аномасы, кто может по срокам сориентировать?
Пилю сейчас для тренировки всякие тудушки и прочие простенькие задачи на ангуляре и реакте.
Сколько должно времени уходить на простое СПА у джуна/мида/сеньора?
Начиная от пустой папки до готового проекта (включая стили и настройку gulp/webpack)?
Очень интересно узнать, какая корреляция между опытом и затрачиваемым временем.

Ответы914938

19 Янв, 00:51 #335 #914938

>>914936
>у сеньора
>от пустой папки до готового проекта
Вечность.

19 Янв, 01:38 #336 #914949

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

Ответы914952914958914969914971

19 Янв, 02:00 #337 #914952

>>914949
Godno.

sage 19 Янв, 02:19 #338 #914958

>>914949
Govno

19 Янв, 02:53 #339 #914969

>>914949
Гавно.

19 Янв, 02:58 #340 #914971

>>914949
Не слушай этих долбоебов, отличный учебник.

19 Янв, 04:22 #341 #914981

Здравствуйте, я полагаю мне к вам.

Хочу сделать простую поделку. Нужно генерить разноцветные пиксели и двигать их в сторону (как будто прогресс бар) Как это сделать лучше всего. Канвасом?

Ответы915007915082

19 Янв, 08:13 #342 #915007

>>914981
Можно сделать так, как тут, на обычных дивах
http://getbootstrap.com/components/#progress

Ответы915238

19 Янв, 08:23 #343 #915009

Вопрос от ньюфага по nodejs.
В общем с помощью request перебираю адреса сайтов. Проблема в том что нода возвращает мне статус кода не тот который в браузере. Например отдаёт 503, вместо 200. А при следующем запуске может и 200 отдать. Поставил уже и UA и timeout (я не могу понять он работает или нет).
Вот код https://jsfiddle.net/atd51zed/
В гугле предлагают setTimeout поставить, но у меня идёт просто задержка 2сек (например) и потом опять выплёвывает всё разом. Еще прочитал что якобы синхронные действия мешаю с асинхронными. В общем помогите.

Ответы915010915078

19 Янв, 08:27 #344 #915010

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

Ответы915040915078

19 Янв, 08:47 #345 #915012

>>914357
Сути не меняет, добавление константы, перевод в строку и т.д. одинаковы для всех. Удаление хотя бы одной тудушки приводит к дублированию айди при следующем добавлении (кроме случая, когда удалённая была последней в массиве). А ещё ты нолик лишний приписал, по-моему, оно же будет 01, 11, 21, 31 и т.д.

>>914303
Не очень понял, что ты этим хотел сказать и как это противоречит (если должно было) моему посту. Где-то туду помечается выполненным и удаляется из списка. Когда и кем конкретно - не так уж важно.

19 Янв, 08:58 #346 #915016

>>911269
Неосилятор, плиз

19 Янв, 09:00 #347 #915018

>>914145
Погугли, ленивый ты пидор.

19 Янв, 10:17 #348 #915040

>>915010
Попробуй делать повторный запрос через несколько секунд при ошибке. Возможно, просто какой-нибудь ngx_http_limit_req стоит на сервере

Ответы915078

19 Янв, 12:06 #349 #915078

>>915040
>>915010
>>915009
В общем решил, кому интересно (судя по всему всем похуй)
https://jsfiddle.net/3mh651pw/

Ответы915157

19 Янв, 12:11 #350 #915082

>>914981

нахуя? length div изменяешь в CSS, вот тебе и вся любовь

Ответы915093915238

19 Янв, 12:41 #351 #915093

>>915082
>length div изменяешь в CSS
Ты обпрагромировался.

19 Янв, 14:51 #352 #915157

>>915078
Другой тупой вопрос. Я Excel файл конвертирую в json. Мне сам json файл не нужен (я ставлю output в null, так в документации написано), а нужны данные. Данные находятся в result. Я не могу подобраться к ним вне функции. С глобальными переменными не работает.
xtj({
input: "./test.xlsx",
output: "./test.json"
}, function(err, result) {
if (err) {
console.error(err);
} else {
console.log('done');
}
});

Ответы915164

19 Янв, 15:01 #353 #915164

>>915157
https://learn.javascript.ru/promise

19 Янв, 15:56 #354 #915205

>>911262 (OP)
https://jsfiddle.net/1ksfc94r/embedded/result/
Кто-нибудь может добавить выбор амплитуды, фазы и анимацию?

Ответы915223915330

19 Янв, 16:19 #355 #915223

>>915205
Чур не я.

19 Янв, 16:49 #356 #915238

>>915007
>>915082
Спасибо за отклик, но я загорелся более продвинутую вещь сделать, за одно освоить пару новых для себя вещей.

В общем на словах все должно быть так примерно

На первом шаге цикла генерируется столбик из разноцветных пикселей например.

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

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

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

Буду ща курить код
http://www.goodboydigital.com/pixijs/bunnymark/
можно сказать вдохновило меня на то, что бы запилить что-то своё.

Ответы915293

19 Янв, 19:09 #357 #915293

>>915238
А не проще ли справа генерить столбик и ничего никуда не двигать?

Ответы915316915519

19 Янв, 19:58 #358 #915316

>>915293
Нет, двигать надо. Не важно как проще или логичнее. Важно, что можно двигать. Можно, конечно, и не двигать, но тот факт, что есть такая возможность подвигать, непременно означает, что ею необходимо тотчас же воспользоваться. И подвигать. Двигай, если ты хочешь двигать. Подвинь это еще раз, и еще.

19 Янв, 20:27 #359 #915330

>>915205
Тут анимация.
https://jsfiddle.net/1ksfc94r/1/
Вот тут анимация.
Частоту бы менять...

4 Кб, 101x418

30 Кб, 1428x374

19 Янв, 21:05 #360 #915358

Тред по вёрстке не нашёл, спрошу тут. Один хер на ангуляре пилю.
Сделал колонку на бутстрапе, пока было по одной глиф-иконке - всё нормально было. Решил добавить к одной из них счётчик - вышла хуита и всё разъехалось.

Код такого плана
http://pastebin.com/7vhXj3qe

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

Ответы915373915383915394

19 Янв, 21:20 #361 #915373

Вроде такого https://jsfiddle.net/qfobycd9/
>>915358-кун

19 Янв, 21:37 #362 #915383

>>915358
Ваших бутстрапов не знаю, вот как в вузе учили, так и пишу. Значит, так:
<div id="buttons-wrapper" style="position: relative;">
<div id="buttons-greenbutton" style="clear: both; width: 100%; border-radius: 5px; background-color: green; text-align:left">+</div>

<div id="buttons-bluebutton" style="clear: both; border-radius: 5px; background-color: blue; text-align:left"><img src="convertique.png" style="float:left" /> <span style="background-color:white; border-radius: 10px; font-size:10px; font-weight:bold" id="buttons-bluebutton-number">1488</span> </div>
<div id="buttons-redbutton" style="clear: both; width: 100%; border-radius: 5px; background-color: red; text-align:left">&#215;</div>
</div>

Ответы915403

121 Кб, 763x399

19 Янв, 21:54 #363 #915394

>>915358
А, если счетчик в углу, тогда всё проще
https://jsfiddle.net/bjc8uuvL/

Ответы915403

307 Кб, 1500x838

171 Кб, 1024x576

124 Кб, 1200x481

421 Кб, 1700x1269

19 Янв, 22:06 #364 #915403

>>915383
>>915394
Спасибо, помогло!

19 Янв, 22:38 #365 #915423

http://jug.ru/2016/09/bugayenko-west/

19 Янв, 23:04 #366 #915439

>>911350
не show а fadeIn

20 Янв, 03:19 #367 #915519

>>915293
Но тогда не будет никакой собственно анимации.

20 Янв, 10:16 #368 #915592

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

Линкрелейтед: https://github.com/ryanmcdermott/clean-code-javascript

Ответы915600

13 Кб, 1280x262

20 Янв, 10:31 #369 #915599

Помогите чем это лечить?

Ответы915600915601

20 Янв, 10:36 #370 #915600

>>915592

thanks, godno

>>915599

<meta charset='utf-8'>

sage 20 Янв, 10:37 #371 #915601

>>915599
Это генетическое, не лучится.

Ответы915603915604

sage 20 Янв, 10:38 #372 #915603

>>915601
>не лечится

Ответы915604

3215 Кб, 210x196

20 Янв, 10:41 #373 #915604

>>915601
>>915603
То сладкое чувство, когда мусор сам обсерается, но пытается не подскользнуться на своем говне))

20 Янв, 11:00 #374 #915607

В общем наворовал функций по всем справочникам каким только мог. ПОдскажите почему не получается анимацию в данном примере получить?

Я же вроде как обновляю холст после отрисовки каждого столбца.

https://jsfiddle.net/s1mvm836/

Ответы915609915619915624

20 Янв, 11:19 #375 #915609

>>915607
>while (new Date() < ms){
>}
Никогда так не делай. ЖС асинхронен, линейный синхронный синхронный код с задержками в нём писать нельзя. И не пытайся пока. setTimeout, setInterval, коллбэки и промисы (что, по сути, то же самое). Потом про промисы через генераторы узнаешь, ES2048 выйдет с async/await, станет проще.

А по коду: браузер не прерывается на отрисовку страницы во время твоего лупа. То есть, что-то ты там может и меняешь, но браузер показывает лишь два кадра: "до" и "после" лупа.

20 Янв, 11:53 #376 #915619

>>915607
Вот типа так. https://jsfiddle.net/s1mvm836/1/

Только оно всё лагает. С канвасом не работал, размуно ли каждые 2 мс вызывать ctx.putImageData — не знаю. Видимо, нет.

Ответы915624915731

20 Янв, 12:05 #377 #915624

>>915619
>>915607

ты же вроде там рисуешь прогресс бар?

вангую тебе нужно определить кол-во итераций на один процент и юзать рекурсию, "спать" там ничего не должно

Ответы915628915689

20 Янв, 12:10 #378 #915628

>>915624
Рекурсия ничем не отличается от лупа. Нужно возвращать контроль браузеру, иначе толку никакого, промежуточные шаги пропадут.

Ответы915682915689

20 Кб, 495x458

20 Янв, 13:25 #379 #915676

Делаю задачку из учебника определение числа на четность при помощи рекурсии и чтот оно мне хуйню пишет.
Сама функция, вижу же — пашет, а вот с получением результата из неё проблема. Где я накосячил-то?

Ответы915687

20 Янв, 13:31 #380 #915682

>>915628

если юзать рекурсию с setTimeOut, то всё норм, она вернёт коллбэк как отресуется пикселями - скажем 1%, и будет ждать нового вызова для отрисовки следущей порции процентов, браовзер при этом не остановится.

Ответы915684915689

20 Янв, 13:33 #381 #915684

>>915682
>браузер

15 Кб, 541x403

20 Янв, 13:35 #382 #915687

>>915676

Ответы915690

20 Янв, 13:36 #383 #915689

>>915624
>>915628
>>915682

Блин как же тут все не для людей, вот на паскале 20 лет назад прогал и было всё изи. Прога не прерывалась если ты не хотел, если хотел выводить всё динмамически то и было все збс. Потом меня эта хуйня бесила в пхп, что нельзя получать динамически ответочку от скрипта, а только результат, и тут ща это же вижу БЛЯДЬ НУ ЗА ШТО

Ответы915691915865

20 Янв, 13:40 #384 #915690

>>915687
Т.е. передавать строку с одной функции в другую — нельзя?

Ответы915693

20 Янв, 13:44 #385 #915691

>>915689
> не для людей
Не осилил асинхронщину? Страдай

Ответы915865

20 Янв, 13:46 #386 #915692

У тебя рекурсивная функция просто не была замкнута.
В пре-финальном шаге ты просто вызывал функцию, после чего она возвратила (ф-ции в JS всегда что-то возвращают, так уж повелось) undefined. А уже в финальном ты вернул результат, но в никуда.

Ответы915693915695

20 Янв, 13:46 #387 #915693

>>915690
>>915692

20 Янв, 13:51 #388 #915695

>>915692
Чтот я непонял.
У меня в isEven стоит ретурн, который даёт функции check число и по идее же должен return фунции чек принимать в себя и тут же отдавать в console.log в самом конце.
Разве не так всё?

Ответы915696

20 Янв, 13:53 #389 #915696

>>915695
Ладно, если в двух словах:
>check(n)
следует заменить на:
>return check(n)

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

Ответы915697

20 Янв, 13:57 #390 #915697

>>915696
Т.е. то, что я постом выше написал — вызывается только один раз, а потом, само в себе, оно вызывает себя уже без ретурна, и по этому оно не передает значение в функцию isEven?

Ответы915701

20 Янв, 14:06 #391 #915701

>>915697
> вызывается только один раз, а потом, само в себе, оно вызывает себя уже без ретурна, и по этому оно не передает значение в функцию isEven?
>оно не передает значение в функцию isEven
Вернее сказать: не возвращает значение.
А в целом правильно размышляешь.
Итого имеем, твоя исходная функция isEven(Number) вернет корректное значение только при аргументах 0 и 1, во всех остальных случаях будет возвращено undefined.

Ответы915702

20 Янв, 14:09 #392 #915702

>>915701
> вернет корректное значение только при аргументах 0 и 1
И сделает это только потому, что они в самом начале проверяются, когда для них описано всё. Спасибо.
А это не считается за какой-то костыль или неудобство, которого в других языках нет?

20 Янв, 15:52 #393 #915731

>>915619
>агает. С канвасом не работал, размуно ли каждые 2 мс вы
А какие есть альтернативы канвасу? Как вообще в js рисовать?

Ответы915789

47 Кб, 480x480

20 Янв, 17:05 #394 #915774

Мальчики, ккой редактор используете? Кто еще на саблайме сидит? Кто на атом, VS code пересел?

Ответы915779

sage 20 Янв, 17:15 #395 #915779

>>915774
Привет, Богдан, покажи банан.

Ответы915780

20 Янв, 17:16 #396 #915780

>>915779
Я так и знал, что первым ты ответишь.

20 Янв, 17:42 #397 #915788

SVVAG

Ответы915789

20 Янв, 17:43 #398 #915789

>>915731
>>915788

20 Янв, 17:57 #399 #915797

А на вашем этом JS можно писать приложения под десктоп?

Ответы915799915818915860

20 Янв, 17:59 #400 #915799

>>915797
А ты знаешь какие-то тьюрринг полные языки программирования, на которых нельзя?

Ответы915801915847

20 Янв, 18:00 #401 #915801

>>915799
АЛГОЛ? Ну я скорее про удобство.

20 Янв, 18:21 #402 #915818

>>915797

http://electron.atom.io/

20 Янв, 19:13 #403 #915847

>>915799
Брейнфак?

20 Янв, 19:26 #404 #915860

>>915797
Конечно, можно. Вот анон годноту пилит для нас.
https://www.youtube.com/watch?v=diqfiq_hH-Y

Ответы915911916284

148 Кб, 300x226

20 Янв, 19:28 #405 #915865

>>915689
>>915691

вопрос, если я правильно понял, в ЖС каждое объявление функции запускает отдельный тред с задачей, но при этом на это не выделяется особый процесс в ЦПУ, но в то-же время эти треды работают как бы параллельно, как это реализовано, и чем это лучше/хуже тру параллельных вычислений?

// тред 1

function t1() {...}

// тред 2

function t2() {...}

Ответы915871

20 Янв, 19:30 #406 #915867

Привет, аноны. Нужен ваш совет касательно тестового задания. Предложили написать небольшое SPA (ng-repeat, несколько фильтров к нему и "хороший внешний вид") "на чём угодно", но за 1.5 дня. Типо симуляция будто заказчик дал задание и ему через 2 дня надо хотя бы рабочий эскиз показать, который потом уже развиваться будет. Т.е. большее внимание уделить вёрстке и UI, а что под капотом - важно, но менее. Он, сделал на 1м ангуляре, не спал 25 часов, нафигачил 80-90% функционала. Что успел - скинул.

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

А сейчас ВНЕЗАПНО переписать под 2ю версию. Зачем? Что должно это тестовое показать? Я, вроде, уже показал свои навыки и свой максимум, насколько это возможно. Какое исправление косяков и какое переписывание в ТЕСТОВОМ ЗАДАНИИ? Что это покажет?

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

Компания разрабов клёвая, я б поработал, но КОМПАНИЯ, при этом, никаких ништяков не обещала, даже про зп речи не зашло, зато толсто, но в шутку типа, спросили работаю ли я от звонка до звонка обычно или есть варианты. И сказали, что у них офис 24/7 открыт и можно если что - ночью прийти поработать. Мне кажется это самый херовый "пряник" из всех возможных.

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

Ответы915869915875915876

20 Янв, 19:34 #407 #915869

Создателям сайтов за 1 сек сразу скажу, что я - новичок и действительно долго проебался с этими вашими материал-дизайнами, чтобы всё хотя бы относительно невырвиглазно смотрелось.
Плюс настройка вебпака с плагинами.
Собственно, я ищу место, где можно начать учиться на готовом проекте и фиксить мелкие баги, т.к. в том же ангуляре пока опыта мало, а не херачить SPA соло. Может, возникло недопонимание?
>>915867

20 Янв, 19:35 #408 #915871

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

Ответы915892

20 Янв, 19:42 #409 #915875

>>915867
> Зачем? Что должно это тестовое показать?
На сколько ты быстро ориентируешься в технологиях/подходах. По сути твой профессионализм.
> Мне кажется это самый херовый "пряник" из всех возможных.
Это значит что им пофиг на твой график, хоть в ночь можешь работать а днем спать.
Я б рискнул на твоём месте. А там потерся бы месяца 3 - не понравится то и свалить всегда можно.

20 Янв, 19:46 #410 #915876

>>915867
Вот честно, я бы не стал бы переписывать и написал им все как было изначально уговорено: прототип, на чем угодно, не стремно выглядящий.
Сделал - сделал. Недостатки сказали, спасибо, учту на будущее, все равно это тестовое.
Так же обговорил бы вилку зарплат, подхожу/не подхожу. И сказал что поработать я могу в принципе когда угодно, т.к. кодить люблю, но овертаймы должны оплачиваться.
Ну и про баги и перепись на 2 версию: если подразумевается испыталка (оплачиваемая естественно) сказал бы что сделаю на ней.
Если бы послали - для себя бы допилил и выложил в качестве поделия собственного.

Это лично мое мнение

20 Янв, 20:32 #411 #915892

>>915871

ок, я читаю сейчас релейт http://www.sohamkamani.com/blog/2016/03/14/wrapping-your-head-around-async-programming/

т.е. сама ЖС не может создавать процессы в ЦПУ у неё всегда один тред/процесс, но она внезапно может создавать стек с очередью к другим рантаймам, которые могут это делать. т.е. жс вроде как получается неким таким диспетчером, который раздаёт задачи в другие среды выполнения и регулярно смотрит статус.

что, получается ЖС это универсальная обёртка(АПИ) для всех языков что-ли, и она сама вообще ничего не делает на процессоре?

Ответы915894915895915897

20 Янв, 20:39 #412 #915894

>>915892
Ни один язык, кроме машинного, не может создавать какие-либо процессы. Это всегда делает окружение.

>у неё всегда один тред/процесс,
и это тоже не верно.
js выполняется в разных окружениях. в некоторых из них есть треды. в других есть кластеры процессов.

Ответы915898915918

20 Янв, 20:40 #413 #915895

>>915892
>вообще ничего не делает на процессоре?
На процессоре ни один в мире язык ничего не делает. Процессор твой понимает только машинный код. Ты откуда вылез такой неуч?

Ответы915898

20 Янв, 20:41 #414 #915897

>>915892
> ЖС это универсальная обёртка(АПИ) для всех языков что-ли, и она сама вообще ничего не делает на процессоре?
Чет в голос проиграл.

Ответы915898

20 Янв, 20:42 #415 #915898

>>915895
>>915897
>>915894

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

Ответы915900915901915915

20 Янв, 20:44 #416 #915900

>>915898
Ассемблер тоже не выполняется на процессоре.

Ответы915918

20 Янв, 20:46 #417 #915901

>>915898
Для тебя они не очевидны ни разу.
Какой там по твоему язык умеет создавать треды или процессы? Си? А вот нхуя он не умеет, он дергает апи операционной системы для этого.
Что он там у тебя умеет, числа складывать? А вот хуй, не умеет он этого - для сложения чисел компилятор генерирует машинный код. А си твой нихуя не делает, кроме как описывает Алгоритм. Как и любой другой язык, js в том числе.

Ответы915918

20 Янв, 21:03 #418 #915911

>>915860
Ты же только что этот ролик записал, лел
Зачем писать о себе в третьем лице?

Ответы916253

20 Янв, 21:07 #419 #915915

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

20 Янв, 21:11 #420 #915918

>>915894
>js выполняется в разных окружениях

меня нода и клиенты интересуют, там вроде всё как раз так, как я и написал:

ЖС типо рассылает задачи из своего окружения в разные другие окружения, которые могут на своё усмотрение распараллелить задачу. вроде как ЖС важен только статус done & result от них и что бы event loop летала, сама ЖС нехуя не делает кроме этого

>>915900

хорошо, байткод

>>915901

я не пытаюсь устроить языкосрачь, х/з нужно погуглить какие языки могут открывать треды/процессы. я пытаюсь понять ЖС на сервере и на клиенте.

Ответы915920

20 Янв, 21:13 #421 #915920

>>915918
>какие языки могут открывать треды/процессы
Никакие не могут. У тебя проблемы с понимаем принципов работы вычислительных машин.

Ответы915937

20 Янв, 21:23 #422 #915929

я хочу, чтоб у меня была кнопка, которая записывает состояние комаонента(hui.state) в файл и при перезагрузке страницы брало данные оттуда, а не через getInitialState.
реакт так умеет? Подскажи, анон. Погуглил, но нашел решения для серверов, а мне надо локально. Типа, лист ту ду чтоб сохранял задачи по кнопке или когда я закрываю страницу, а не проебывал.

Ответы915931

20 Янв, 21:28 #423 #915931

>>915929
localStorage

Ответы915947

20 Янв, 21:35 #424 #915937

>>915920
>какие языки могут открывать треды/процессы
>Никакие не могут.

ок, погуглил, получается что процесс один на ядро ЦПУ, но в нём спаунятся треды с задачами, которые пушатся в РАМ параллельно. это как минимум могут C и C++. ЖС как раз оправляет в эти процессы задачи и ждёт решения. сама она кроме петли и стека с задачами, никаких тредов в своём процессе не создаёт?

Ответы915943

20 Янв, 21:48 #425 #915943

>>915937
> это как минимум могут C и C++
Нет, они этого не могут.
Они дергают для этого апи операционной системы.

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

Ответы915968

20 Янв, 21:55 #426 #915947

>>915931

разве это не создает локальный объект в браузере? Я бы хотел в отдельный файл записывать. может я просто не понимаю, как оно работает

Ответы915951915953

20 Янв, 21:58 #427 #915951

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

Ответы915954

20 Янв, 22:00 #428 #915953

>>915947
localStorage выполняет твою задачу. После закрытия вкладки то, что ты в него сохранишь останется в нем и загрузится снова, когда ты вновь откроешь вкладку. Он для того и сделан.

Ответы915954916000

20 Янв, 22:02 #429 #915954

>>915951
если бы это было реализовано как загрузка файла, то еще как.

>>915953
хорошо, спасибо, анон. Пойду лопатить свои сетстейты в сторажи.

Ответы915959915962916000

20 Янв, 22:05 #430 #915959

>>915954
>загрузка файла

https://github.com/rndme/download

20 Янв, 22:09 #431 #915962

>>915954
>если бы это было реализовано как загрузка файла, то еще как.
Тогда это не запись в файл. Ты можешь на здоровье, генерировать файл, скачивать его, а потом заново загружать. Но это не запись в файл.

Ответы916000

20 Янв, 22:21 #432 #915968

>>915943
>Нет, они этого не могут
>Они дергают для этого

лол анус себе дёрни, заносчивый пидорг. я тебе и ничего не говорил, про то как это реализовано. это имхо понятно, что все низкоуровневые ЯП это "обёртка" вокруг ядра системы - а ЖС внезапно обёртка вокруг этих ЯПов.

Ответы915970915972

20 Янв, 22:25 #433 #915970

>>915968
ЖС просто один из этих ЯП, а не обертка вокруг них

20 Янв, 22:27 #434 #915972

>>915968
Ты дурачок.

Ответы915975

20 Янв, 22:39 #435 #915975

>>915972

что порвался то? всё верно же. с хуяли тогда все ключевые компоненты ноды написаны на си и крестах?

Ответы915976

20 Янв, 22:43 #436 #915976

>>915975
Я же говорю - ты дурачок.

Ответы915980

20 Янв, 22:54 #437 #915980

>>915976

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

Ответы915982

20 Янв, 22:57 #438 #915982

>>915980
Пруфы того что ты дурачок - все твои предыдущие сообщения.

Ответы915983

20 Янв, 22:58 #439 #915983

>>915982

толсто, иди нахуй.

Ответы915986

20 Янв, 23:02 #440 #915986

>>915983
Ты еще и обдвачевался в край, дурачок.

Ответы915991

20 Янв, 23:08 #441 #915991

>>915986

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

20 Янв, 23:23 #442 #916000

>>915962
в чем вообще проблема изменять локальный json файл? он же локальный.
>>915954
>>915953
нихуя не работает, кстати. Создается ключ, но сразу после ре-рендера ДОМ древа он теряет свое значение(console.log(localStorage.getItem('key')) выдает null). Может есть таки вариант изменять какой то локальный, для приложения, json или еще что?

Ответы916009

20 Янв, 23:40 #443 #916009

>>916000
>нихуя не работает, кстати
Значит ты что-то делаешь не так. Локалсторадж персистентный.

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

Ответы916020

21 Янв, 00:09 #444 #916020

>>916009

localStorage.setItem('key', 'value')
console.log(localStorage.getItem('key')) // value

{код реакта...

onClick() { // событие вызывает новый рендер всего документа
...
console.log(localStorage.getItem('key')) // null

}

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

Ответы916023916026916028

21 Янв, 00:10 #445 #916023

>>916020
закрывающее } для кода реакта проебал после второго консольлога, но и так понятно.
Под "код реакта" я имею ввиду, внутри класса. hui extends react class etc

21 Янв, 00:15 #446 #916026

>>916020
>про второе, я имею ввиду локальный файл, кот.существует только в директории сайта/аппа. Т.е если он у тебя на сервере, он твой же жсон и редактирует. Похапе же так умеет, а жс нет что ли?
Ты несешь какую-то чушь.
На клиенте нет никаких папок с твоим сайтом\аппом.

Ответы916045

21 Янв, 00:18 #447 #916028

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

Открой консоль здесь в этом треде.
вбей, блядь туда localStorage.setItem('key', 'value') и нажми enter. теперь закрой вкладку со с этим тредом. и открой снова.
и вбей в консоль localStorage.getItem('key')
Что блядь? Работает? Вот нихуя себе.

Ответы916045

21 Янв, 00:21 #448 #916030

Тупые блядью Тупые. Одни идиоты. Откуда они сука лезут.
>Почему я не могу писать/читать файлы из браузера?
>ЖС обертка над другими ЯП!
>локальные фалы как на сервере!
>директория с сайтом на клиенте!

Пиздец блядь.
Пиздец, нахуй вы живете.

49 Кб, 1003x1023

21 Янв, 00:27 #449 #916033

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

Ответы916035916039

21 Янв, 00:28 #450 #916035

>>916033
ААААААА БЛЯДЬ

Ответы916040

21 Янв, 00:37 #451 #916039

>>916033
Лолшто, какие всплывающие окна? Ставь нормальный Саблайм 3 и не еби моск.

Ответы916043

21 Янв, 00:38 #452 #916040

>>916035

Ну ладно, ну че ты, может он толстенький.

133 Кб, 1106x453

21 Янв, 00:43 #453 #916043

>>916039
Ну я делаю ран скрипт и не работает. Должно окно выскакивать такое. Я вообще не шарю нифига, надо определиться с программой, где все это делать, можете порофлить с того какой я даун, но ответ дайте. Чтобы уровнять это все скажу, что я инженер, работаю уже 3 года и шарю кадовские программы и вы можете у меня спросить что-то тоже.

Ответы916046

21 Янв, 00:44 #454 #916045

>>916026
лол. На сервере есть папка с сайтом, в ней файл, кот.содержит дату. Те же юзернеймы и пароли. Логин и пароль передаются в файл при регистрации похапе запросом. Или ты прав и сервер содержит голый сайт, а логин и пароль - локалстораж браузера? Вот и я не думаю.

Я хочу иметь тоже самое в локальной версии, но без пхп. Жс редактирует жсон/что угодно.
Такие дела.

>>916028
И че ты такой агрессивный и остроумный? Ты специально не читаешь мой текст? пишу тебе код словами:

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

Если же я пытаюсь прочитать ключ внутри класса(для тебя:
var App = React.createClass(
(какой то код и функции);
onClick() {
добавить элемент, создание которого вызывает перерисовку всего компонента;
и если уже тут консольлог (localStorage.getItem('key')) который динамически перерисовывается, то значение null после первого перерендера. Ключ остается, а его значение становится "". Я бы записал тебе видео, да не хочу еще пол часа на создание шебм тратить, фома.

Ответы916057916059916060

21 Янв, 00:47 #455 #916046

>>916043
алерт создает компонент window, а ИДЕ имеет только консоль. Твои всплывающие окна будут при нажатии кнопки ф6 в любом браузере на странице, куда ты добавишь код.

Ответы916048

21 Янв, 00:48 #456 #916048

>>916046
А в программах и не проверить никак работает это или нет?

Ответы916050

21 Янв, 00:52 #457 #916050

>>916048

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

Ответы916052

21 Янв, 00:53 #458 #916052

>>916050
Не умею. Ладно, буду ковыряться дальше сам.

Ответы916055

21 Янв, 00:59 #459 #916055

>>916052
1.Открываешь хром
2. Нажимаешь F12
3. Выбираешь вкладку Консоль/Console
4. В строчку ввода вбиваешь свой алёрт
6 Нажимаешь Enter
7 ??????
ПРОФИТ!

21 Янв, 01:00 #460 #916057

>>916045
>локальной версии
В каой блядь локальной версии, дебил.
Браузеру поебать откуда ты загрузил код. ограничения для всех одинаковые.
Иди нахуй просто.

21 Янв, 01:01 #461 #916059

>>916045
> т.к этот код находится до создания класса реакта.
Пиздец.
Спешите видеть. РЕАКТ НЕ ПОДДЕРЖИВАЕТ ЛОКАЛ СТОРАДЖ

21 Янв, 01:02 #462 #916060

>>916045
>шебм
Нахуй мне твои вебм?ты язык выучи, а не фреймворк, чтобы понимать в чем твоя проблема, олень.

Ответы916066

21 Янв, 01:10 #463 #916066

>>916060
так ты бы объяснил, раз умный такой.

21 Янв, 02:15 #464 #916088

Станет ли изучения JavaScript неактуальным иза TypeScript?

Ответы916136

21 Янв, 05:51 #465 #916136

>>916088
нет, ведь макаки не могут в статическую типизацию поэтому они и сидят на жс

Ответы916152916158

21 Янв, 08:11 #466 #916152

>>916136
А зачем она?

21 Янв, 09:25 #467 #916158

>>916136
Проиграл. Что в нее уметь, дебил?
Скорее наоборот, перекатывальщики не в состоянии осилить динамический язык с неявной типизацией.

Ответы916159916163

21 Янв, 09:35 #468 #916159

>>916158
Двачую

21 Янв, 10:05 #469 #916163

>>916158
> Скорее наоборот, перекатывальщики не в состоянии осилить разрабатывание очка ржавым дилдаком.

Пофиксил наркомана.

Ответы916172

21 Янв, 10:39 #470 #916172

>>916163
По себе не судят.

21 Янв, 13:39 #471 #916253

>>915911
Типа я - не он.
Один из подписонов, которому нравится, что делает этот анон.

21 Янв, 14:11 #472 #916284

>>915860
два чая electron-ному анону. То, что надо.

60 Кб, 1280x720

21 Янв, 14:28 #473 #916295

>>911262 (OP)

го в рулетку, я создал сервис https://dev.videochat.red/room/ruAnonymous

21 Янв, 18:34 #474 #916415

Посоны, хочу сделать веб интерфейс для прибора на арме с линухом. Необходим вывод графика с частотой сбора 20мс, порядка 10 минут в реальном времени, т.е. 30000 точек. Насколько это безумная идея? Какой стек использовать? Из просмотренных жс либ, только plotly отдаленно напоминает то, что я хочу.
Хотелось бы, чтобы все это не тормозило. Что вы бы посоветовали использовать? Я склоняюсь к реакту и стековерфлоу дривен девелопмент. Насколько сырой дартангуляр? Эльм для игрушесных проектов?

Ответы916433916452

21 Янв, 19:07 #475 #916433

>>916415
Ты для ссаного графика фреймворк хочешь юзать, что ли?

Ответы916507

38 Кб, 1265x861

сколько стоит и кто бы мог сделать? 21 Янв, 19:17 #476 #916437

Нужна программка. Сначала думал может на С# но потом решил что она должна запускаться у любой тети паши без требования .net. Ну и с html мордой, которую я смогу поправить если что.

Суть - нужен просмотрщик логов, который будет не просто выводить сообщения, а делать это имтитируя мессенджер. логи храняться в виде txt файла такого содержания:

09.02.2013 17:01:19Vasiliy99го дота
09.02.2013 17:02:23Grigoryго
09.02.2013 17:04:15Vasiliy99я создал
09.02.2013 17:05:13Afanasiyпидорасы, если не будете работать, поувольняю к хуям

Работет так: Открывается страница, перетягивается файлик за допустим 2016. Потом можно выбрать любой день за который хочешь посмотреть логи. После выбора появляется в "чате" первое сообщение. Чтоб вывело второе надо нажать кнопку Send или тыцнуть enter если курсор стоит в текстовом поле снизу. При чем не важно какой текст вы пишете снизу, он не будет попадать в чат. Ты просто пищешь что угодно, жмешь кнопку и из лога подтягивается следующее сообщение. В двух словах такое, с некоторыми нюансами типа кнопки выбора рандомного дня и мелочей по покраске сообщений.

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

Ответы916440

4 Кб, 753x57

21 Янв, 19:19 #477 #916440

>>916437
>\tVasiliy99\tго дота

бля, двач табы отобразил криво. ну вы поняли как оно должно быть

21 Янв, 19:47 #478 #916452

>>916415
О, братишка, привет. Маялся подобной хуйней намедни, ибо асушник.

Итак, понеслася:
>Необходим вывод графика с частотой сбора 20мс, порядка 10 минут в реальном времени, т.е. 30000 точек. Насколько это безумная идея?

Во-первых, Plotly, как и все либы для построения графиков, базирующиеся на движке D3, используют SVG.
SVG хорош для создания богатых интерактивными плюшками графиков, но по сравнению со скоростью рендеринга сосут у движков, использующих webgl/2d-canvas технологию.

Во-вторых, продумай стратегию рендеринга графиков. Тебе действительно нужно ОБНОВЛЯТЬ ВИЗУАЛИЗАЦИЮ каждые 20мс? Скорее всего, нет. Данные можешь с определенной уверенностью собирать с такой частотой, а отрисовывать, скажем, раз в 5 секунд сразу пачку.

Ну и в-третьих,
>Хотелось бы, чтобы все это не тормозило
It depends. Рендеринг графиков - достаточное узкое место в общем процессе отрисовки страницы и обновления документа в целом. Поэтому, с целью минимизации тормозов, используй следующие рекомендации как говорится, мнение анона может не совпадать с мнением /pr/, лол:
- отрисовывай графики с помощью canvas либ если не нужна богатая интерактивщина;
- отрисовывай с меньшей частотой, чем собираешь данные;
- если требуется интерактивная навигация по временной шкале, хендлеры лучше организовать таким образом, чтобы обновления графика подчитывались с сервера, ибо держать ВЕСЬ объем координатных точек для графика в памяти - удар по производительности и опять же, узкое место;
- ну и, естественно, убирай за собой, как принято в культурном обществе. Удаляй массивы данных, более не нужных и находящихся в памяти.

Лично я использовал следующий стек и задействовать тебе, анон, я бы не рекомендовал в виду необходимости большой работы по оптимизации:
Сервер-сайд: NodeJS + NeDB + socketIO, клиент: ReactJS + MobX + Highcharts (SVG-based) + Clusterize

Требовалось отрисовывать пять координантных графиков, обновляющиеся с частотой 100-250 мс.
Отрисовывал раз в 5 сек.

Ответы916510

66 Кб, 604x604

21 Янв, 20:11 #479 #916458

Объясните нюфагу что блажд за хуйня происходит:
var t = "hello";
r+=" ";

Итого имеем просто "hello" когда должно быть "hello " куда пропадает whitespace? Я ничего не обрабатывал.

Ответы916459916461

21 Янв, 20:12 #480 #916459

>>916458
>место r там t конечноже

2 Кб, 212x138

21 Янв, 20:15 #481 #916461

>>916458

Все так.

Ответы916471

21 Янв, 20:22 #482 #916471

>>916461
Попробовал с ординарными кавычками. Итог нихуя. Мб это гуглхром?

Ответы916472

21 Янв, 20:23 #483 #916472

>>916471

Ну я тебе скрин с консоли хрома скинул

21 Янв, 21:19 #484 #916507

>>916>>916433
Планируется достаточно много отчетов, возможность менять настройки модулей, смотреть архивы, там функционала можно придумать больше, чем на 90% сайтов. Да и божественные, самописные велосипеды я бы не хотел использовать.

21 Янв, 21:26 #485 #916510

>>916452
Спасибо за развернутый ответ. Обновлять хоть раз в 5 секунд. Очистить память в за это обнулить ссылку на объект с данными и ждать Гц?

Ответы916513

21 Янв, 21:33 #486 #916513

>>916510
>Очистить память в за это обнулить ссылку на объект с данными и ждать Гц?
Да. Ну и, очевидно, вызвать соответствующие методы для (пере)строения графиков с актуальными значениями.

21 Янв, 22:23 #487 #916546

Чего-то не понял. Почему JS до сих пор общепризнано не переименовали в ES, которым он сегодня и является?

>ECMAScript — это встраиваемый расширяемый не имеющий средств ввода-вывода язык программирования, используемый в качестве основы для построения других скриптовых языков

Все встраиваемые языки так или иначе расширя.тся за счет API окрудения, куда встраиваются. JS не приносит в ES какие-либо синтаксические расширения, как например это делал AS, все исключительно на уровне API. Так по факту JS это никакой не JS, а ES.

От признания этого факта все только выиграют. Отпадет эта глупая ассоциация с Java у дурачков. Отпадет легаси биография как язычок ща 10 дней и используется только для снежинок. Потому как первоначальные версии JS(хотя по факту вообще не js а то mocha, то live) и были запилены Айком за неделю, и потом на протяжении десяти лет использовался только для анимации снежинок и меню, сегодня нет никакого ТОГО JS, есть вполне себе ES, который встраивается в разные окружения, спеки на который курирует целый комитет комитет.

Такие дела, тащемта. Я бы прямо начал с переименования треда.

Иначе хуйня выходит, какая-то.

779 Кб, 2252x1689

21 Янв, 23:07 #488 #916602

Можно ли в чистом ДС без Ангуляра как-то напрямую биндить значения из кода? Если у меня есть, скажем, объект Человек и у него есть поля Имя и Фамилия, а на странице есть элемент у которого есть свойство text, можно ли чтоб в этот Текст подтягивалось автоматом значение из Имя без нажатий кнопок и прочего?

Ответы916607

21 Янв, 23:15 #489 #916607

>>916602
>без нажатий кнопок и прочего
Хочешь, чтобы браузер сам решал что куда и когда ему подтягивать? С ума сошёл?

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

Ответы916620

21 Янв, 23:25 #490 #916620

>>916607
Не сам решал, а указать. В ангуляре это делается через [(ngModel)]
Ты пишешь [(ngModel)]="Person.Name" и страница смотрит что там за значения у тебя в Person.Name и подставляет сразу. В чистом ДС так нельзя?

Ответы916623

21 Янв, 23:28 #491 #916623

>>916620
Можно.
Для этого тебе надо указать - написать скрипт.

22 Янв, 00:02 #492 #916649

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

Ответы916663

22 Янв, 00:29 #493 #916663

>>916649
Я тебя люблю :3

22 Янв, 09:59 #494 #916756

Возможно ли как-то организовать многопоточную загрузку видео в html5 video? Подвластны мне и сервер, и клиент. Если лёгкого пути нет, то может можно WebWorker'ами загрузить данные в память, скотчем склеить и потом как-то указать video элементу путь к ним?
В моём случае загрузка в несколько потоков увеличивает скорость, в разы.

Ответы916765

22 Янв, 10:17 #495 #916765

>>916756
https://developers.google.com/web/updates/2011/11/Stream-video-using-the-MediaSource-API

Ответы916770

22 Янв, 10:24 #496 #916770

>>916765
Похоже на то, что нужно, спасибо, буду пробовать.

22 Янв, 12:05 #497 #916830

Посоны, на чем вы пишите ES5 или ES6?
Хочу вкатится нормально в JS, стоит ли сразу начинать писать используя let, class и прочие плюшки нормальных языков?

PEREKOT Perekoter !JLHGEtxGTk 22 Янв, 12:09 #498 #916833

ПЕРЕКОТ в тред >>916832 (OP)

Тред утонул или удален.
Это копия, сохраненная 1 февраля 2017 года.

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

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

« /pr/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion