Это копия, сохраненная 2 февраля 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, Walmart и многие другие.
НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД! Воспользуйтесь https://jsbin.com/ для браузерного кода и https://ideone.com/ для серверного кода.
Краткий FAQ:
1. Что это за язык такой? - Мультипарадигменный язык, изначально создавался для использования в браузерах как язык сценариев для придания интерактивности веб-страницам, однако в процессе своего развития преодолел этот этап и сейчас может использоваться для любых целей ввиду своей неограниченной гибкости и удивительно удобного синтаксиса. Сочетает в себе особенности объектно-ориентированного, функционального, событийно-ориентированного и императивного программирования.
2. Какие возможные направления для разработки существуют? - Фронт-энд (Vanilla, jQuery, Angular, Backbone, React, Meteor), бэк-энд (Node.js, Express, Sails), геймдев (Phaser, Cocos, Pixi), 3D графика (Three.js, Babylon.js), мобильная разработка (NativeScript, Phonegap, Ionic), десктопная разработка (NW.js, WinJS).
3. Можно выучить только jQuery и всё писать на нём? - Не стоит, лучше начать писать на jQuery, когда освоишь ванильный JS, дабы не испортить себе восприятие языка, и в будущем не испытывать трудностей с изучением сложных фреймворков.
4. Существуют ли стайл-гайды для JavaScript? - Да, вот: https://github.com/felixge/node-style-guide
5. Какие новые возможности добавил ES6? - Вот здесь можно почитать на русском: https://learn.javascript.ru/es-modern
6. Ну ладно, с чего начать изучение то? - Дальше я приложу список материалов для изучения.
Чистый JS:
Книги: Дэвид Фленеган - "JavaScript: Подробное руководство"
Дуглас Крокфорд "JavaScript: сильные стороны"
Стефанов С. - "JavaScript. Шаблоны"
Джон Резиг - "Секреты JavaScript ниндзя"
Николас Закас - "JavaScript. Оптимизация производительности"
Node.js
М. Кантелон , М. Хартер - "Node.js в действии"
Кирилл Сухов - "Node.js. Путеводитель по технологии"
Дэвид Хэррон - Node.js. Разработка серверных веб-приложений
Front-end
Эдди Османи - "Разработка Backbone.js приложений"
Эрл Каслдайн, Крэйг Шарки - "Изучаем JQuery"
Читать онлайн
Dr. Axel Rauschmayer - "Speaking JavaScript: An In-Depth Guide for Programmers" - Одна из лучших книг по JS. Пока только на английском. http://speakingjs.com/
Marijn Haverbeke - "Eloquent Javascript" - Вводная книга по JavaScript и программирование в целом. Перевод на хабре: http://habrahabr.ru/post/240219/ На английском :http://eloquentjavascript.net/
http://ru.discovermeteor.com/ - Книга по Meteor.js - одному из самых лёгких и функциональных фреймворков. Полностью на русском.
Онлайн сообщества:
http://learn.javascript.ru/ - оно одно, единственное. Начинать учить язык советую отсюда, потом переходить уже к книгам.
http://www.jstherightway.org/ - Огромный гайд составленный буржуями. Есть книги, статьи и всё-всё-всё.
http://nodeguide.ru - Огромное количество переведённых статей по Node.js
http://node-center.ru - собрание информации по Node.js. Особенно интересен раздел со ссылками и книгами.
Бложики и новостные ленты:
http://dailyjs.com/ - DailyJS
http://weblog.bocoup.com/ - Bocoup Weblog
http://perfectionkills.com/ - Perfection Kills
http://www.reddit.com/r/javascript - subreddit на reddit.com
http://toddmotto.com/ - Todd Motto, Lead front-end @appsbroker. Developer Expert @google.
Онлайн курсы:
Как же можно учить язык, только читая книжки? Нужна практика, и только так изучаемое усваивается, не иначе.
CodeSchool - http://codeschool.com/ Отличный ресурс для изучения языка, очень много курсов по всем передовым технологиям.
CodeAcademy - http://www.codecademy.com/ Уже не такой сильный, но все еще интересный проект, так же маст хев для набивания скилла.
Udacity - https://www.udacity.com/course/ud015 Дает хорошее представление о замыканиях.
Выучил основы, написал свою пузырьковую сортировку и змейку? Не знаешь как двигаться дальше?
Почитай теперь это - https://shamansir.github.io/JavaScript-Garden/
А потом? Я и так уже гений!!!
Выбери себе направление. Может, ты хочешь игори делать? Тогда вперед на гитхаб, и ищи Phaser, Pixi и другое, выбор не маленький. Хочешь на сервер сайд? Копай в сторону Node.js, Express, Socket.io. Хочешь писать MVC логику? Angular, Backbone, React, да множество их. Нельзя забывать про NW.js и WinJS, позволяющие создавать десктопные приложения.
— Вот Ангуляр...
— О-о, Ангуляр, да, да...
— Или Реакт...
— О-о, Реакт, да, да...
Первый, смотрит второму на сигарету: "пепел сбей".
— Пепелсбей ваще крутой фреймворк
>Here is an example: Suppose we are parsing a language such as JavaScript or TEX in which a pair of curly braces indicates a scope.
Что этот код https://jsfiddle.net/9qby57u1/ делает? Что за функция advanced, которая нигде не определена, нахуя она применяется сначала к '{', потом к '{'. parse?
Нет фреймворков кроме ванилы и v8 пророк его.
1. Приходишь на собеседование и говоришь, что у тебя диплом, но нихуя сделать не можешь. Не берут
2. Приходишь без вышки, но можешь все сделать. Берут
3. Приходишь без вышки все делаешь но есть еще такой же который все сделал и с вышкой, тебя не берут.
Все. Больше не спрашивай. Главное умение, а не бумажка, если речь не про электриков, врачей и т.д.
Смысл то тут в Object.create и как свойства у объектов ищутся по прототипной цепочке. Считай что advance сдвигает каретку парсера, parse - заполняет scope - переменными.
Падажи, еба-на, то как ищутся свойства я знаю: если у объекта нет такого, то оно ищется у прототипа и так далее по цепи. Делегирование, хуе-моё. Object.create создает новый объект с указанным прототипом. Но что за каретка парсера, и как ты узнал, что делает parse? Что-то совсем не пойму смысл происходящего
Так он и говорит, что если бы мы парсили язык с нормальными скопами, а потом обращались к переменным, то переменные искались бы так же, как и в жс-ных объектах. Считай что это псевдо-код был.
>нормальными скопами
Типа в жс нету блочной области видимости, поэтому скопы ненормальные?
Автор предлагает представить, что мы парсим язык такой как JS, но с «нормальными скопами»: элементы, находящиеся в скопе, не видны снаружи.
>In a sense, an inner scope inherits from its outer scope
>то переменные искались бы так же, как и в жс-ных объектах
То есть, если в скопе нет чего-то, то недостающий элемент ищется снаружи?
Дальше что? Пиздец, вообще нихуя не понимаю.
>То есть, если в скопе нет чего-то, то недостающий элемент ищется снаружи?
Это.
Автор хотел на примере аналогии показать, как работает прототипное наследование. Ты понял как оно работает, но не понял аналогию, либо теперь не понимаешь нахуя она здесь, ведь и так все понятно. Move on.
Спасибо.
Стор делают для всего приложения, а не для отдельных компонентов.
Тем более для такого маленького компонента из 3х инпутов он не нужен, храни всё в самом стейте компонента.
Наебни-ка лучше ydkjs, там заебись все поясняется. Ну нахуй этого старого пердуна.
Спасибо за совет. Но на переправе коней не меняют, дочитаю уже.
>старого пердуна
Я думал, что Крокфорд очень авторитетен. Вообще мне нравится его идея отбросить всё лишнее.
Судя по наличию его выступлений с названием Better Parts, Good Parts уже немного устарели.
Советую забить на книгу и посмотреть презентацию, а потом почитать что-то более современное, иначе ты наоборот плохую практику подхватишь скорее всего
Почитал я комментарии людей под видео лекции с Пердуном. Такое ощущение, что у комментаторов баттхерт от осознания, что все их техники устарели и они пишут плохой код. «Вы всё врёти! Старик обезумел, ему пора на покой»
Например, в The Better Parts можно увидеть пример функции, производящей объекты.
function constructor(spec) {
let { member } = spec,
{ other } = other_constructor(spec),
method = function() {
// member, other, methid, spec
};
return Object.freeze({
method,
other
});
}
Это, похоже, обновленный вариант функции, предложенной в книге в главе Inheritance. Там все подробно описано, что все это значит. Ньюфагу как мне пригодится.
со старой школой вообще странные отношения нынче, мало того, что все слишком быстро развивается с момента появления хрома и устаревают 'классические' расклады, нынче читаешь охуенный туториал какой-нибудь на ангельском, смотришь, а там пацан 20 лет, которого у нас бы в распоследнюю програмировачную не взяли бы цмски поддерживать из-за отсутствия военного билета и распиздяйства. и вот тут-то и начинается бугурт и появляется острое желание следить за всеми новинками. ибо какого хуя, тут у нас и равняться не на кого, к прискорбию.
Посоветуйте тогда, что же из списка в ОП-посте по чистому джс еще актуально для полного ньюфага вроде меня ??learn.javascript доучиваю
А то я как раз думал за "старого пердуна" браться, когда с кантором закончу.
Good Parts. Потому что книжка тонкая, быстро прочтешь и хуже тебе не станет. При просмотре актуальных лекций от Крокфорда, будешь в теме. Инфа вообще в книге правильная, устарел сам список хороших частей языка.
Тут неприятный прикол а том, что на чистом уже не пишут, а знать все равно надо. Анон >>611838 с одной стороны верно говорит, про годные куски не повредит почитать. Но когда за деньги будешь писать, возможно, важнее будет знать про всевозможные паттерны, es6, всю экосистему (из сборщиков, пре/пост-процессоров, шаблонизаторов, фреймворков и прочей хуерги). Что сейчас в первую очередь надо задрачивать, уже хз, чтобы шарить, надо шарить во всем. с одной стороны хорошо (за то нам и платят), с другой, может и хардкорненько вкатываться нынче.
- продвинутая книга, для уже опытного и слегка искушённого годами кодера
- книга достаточно объёмная и вместительная, чтобы за неё можно было браться вновь и внось, обращаться у нужным моментам, заглядывать в неё, как справочник, а заодно вспоминать, какой я хороший друг, раз подарил её.
Сам книг читал не так много: полный справочник понравился, но хотел бы что-то более углублённое, и связанное с опытом флагманов области: good parts, методы по производительности и прочему.
Чем занимается друг: парсеры и прочие серверные скрипты на Node.js, а в скором будущем Meteor и React.
ОП-пост прочёл, но подборок хороших js книг полно, а выбрать лучшую не получается.
Не совсем JS, но бохато и оценит - Совершенный код, рефакторинг М. Фаулера
В твердом переплете офк
Ничего ультрахардкорного в этом не вижу. Надо только знать направление, а материалов в инете вагон.
Спасибо за ответ, думаю, с книгой крокфорда все же ознакомлюсь. Не помешает. Хочу сначала в пьюр джс разобраться норм, а тогда и с фреймворками любыми попроще будет.
Крокфорд норм чувак, те вещи что он описывает тоже актуальные и сейчас по большей мере.
Я бы начал с you dont know js серии, благо она бесплатная и очень по делу.
>Хочу сделать другу подарок
Единственные подарки, которые получал я, это носки и труселя от мамы
Програмцы, тут есть одна галлерейка на чистом хтмл и надо её проапгрейдить. Условно, есть n*m табличка с пикчами: хуи, сиськи, пёзды. Надо зоделать сверху три иконки: хуй, пизда, сиська, при нажатии которых нерилейтед пикчи несколько блюрились бы.
В этот ваш JS не умею, фрейморки какие-то.
Что почитать, чтоб быстро въехать и зоделать желаемое?
Не бейте, можете обоссать, просто я умею только в скрипты на пистоне для минимальной автоматизации.
В любой непонятной ситуации - jquery.
Типа React, Redux, Webpack, React-router, Material-UI и проч.
Почитываю документацию и что дальше? Когда пытаюсь сделать вместе, получается какая-то хуйня.
Или просто на все это нужно тратить месяцы и годы?
JS знаю на базовом уровне, но решил сразу начать изучать реакты, дабы по-пути изучать именно то, что нужно.
Какая хуйня получается?
По мне так нихуя. Алсо, что с ридуксом нихуя не понял. Поясните тупому.
Pufff... its magic!
-весь стейт в одном месте.
-стейт мутейтится функциональным способом (чтоб кодеманка делала это в одном месте и очевидным образом, а не обмазывалась говном с ног до головы)
Webpack React аноны. Делюсь годнотой.
Итак, переходим на CSS Modules
1. import CSSModules from 'react-css-modules';
2. каждый компонент - свой файлик стилей, я кладу в отдельные папки
3. import styles from './index.styl' импортим стили. Я испьзую стилус с лоадером, так же делаем и с css
4. В компоненте ставим className={styles.header|wrapper|content u name it}
5. В конце компонента добавляем декоратор
export default CSSModules(Input, styles);
вместо export default Input
В вебпаке добавляем к css_loder ?modules
так же и с препроцессорами, вот мой пример
loader: "style-loader!css-loader?modules!postcss-loader!stylus-loader"
Можно добавить .gcss лоадер без этой фигни, для глобальных стилей.
сгенерированные имена стилей с хешами доступны в массиве this.props.styles["имя стиля"]
если например надо передать в другой компонент
Я не понял нахуя тебе декоратор какой-то.
styles.header|wrapper|content - это уже готовые для использования имена классов.
И в чем профит?
Допустим есть у меня некий инпут и стили для него, я его использую два раза, получится 2 раза стили будут дублироваться с разным хешем. В чем прикол?
1. handler.parameter или [event]
2. handler.parameter или handler[event]
Что подразумевается?
Конечно первое.
Бля ты хотя бы описание прочитай того что вообще такое css-модули, какое дублирование, какие разные хэши, че ты несешь вообще.
Этот скрипт ставит по типу красное-черное, и удваивает при проигрыше. Мне нужно, чтобы он ставил на зеленое умножая предыдущую ставку на 1.08 .
Требуется наличие аккаунта стим для входа на сайт.
Код между ` и ` помещай.
На Рельсах (и на sprockets в целом) тебе надо поместить coffee перед 6to5 и называть файлы .js.es6.coffee (или можно настроить и без таких названий, хз)
Я знаю, что такое css модули.
Объясни в чем сути того, что ты написал, у тебя разве не будет дублирования стилей?
Пример, опять же:
2 инпута, юзаем в разных местах, стили для них одинаковые. В обоих случаях мы импортим стили, но хэши создаются разные, условно будет "input_class_khj123" и "input_class_uio321". В чем профит?
Доки почитай, атм куча примеров, всё расписано очень подробно, одни из самых лучших доков, которые я видел.
Yo dawg
Как вообще происходит сборка css-файла:
Когда он проходит через style-loader он превращается в js-модуль,
который ничего не экспортирует, просто добавляет стили на страницу.
Css-модули просто добавляют еще один этап обработки - стили переименовываются и js-модуль теперь возвращает объект с именами классов.
Нет никакого дублирования, хэши ведь не в момент импорта создаются, не в рантайме, они при сборке создаются, один раз. Я вообще не понимаю как к такой мысли вообще можно прийти.
Если нет дублирования, тогда вообще какой смысл?
Иначе я бы в первом компоненте импортнул стандартные стили, тут же на ходу поменял условно какой-нибудь стиль, типо color: red вместо color: green, и мне создались стили с хешем, где класс "xyu" имеет красный цвет.
При этом во втором компоненте я бы импортнул те же самые стили, но цвет бы там остался прежним, при всём прочем, и стили не пересекались бы, т.к. хэш уже другой.
Если у тебя они не дублируются, то это не модули, а какое-то говно непонятно зачем нужное.
Зачем ты вообще это юзаешь? Как они тебе помогают?
<img src="http://i.imgur.com/48VIfoa.png?1" title="${tile}" />
Так вот, она загружается где-то секунд пять. Как ускорить?
>>613400
А как она их генерит? На чем? Мы об этом сами должны догадаться?
Проблема не в том, как она генерит. Генерит она с помощью FreeMarker Template Language. С текстом все збс работает, а вот с изображениями...
>>613354
Смотря как импортируешь, если я импортирую фабрику, то всё будет ок. Если я импортирую просто объект, а потом делаю его копию, то всё будет ок, и т.д.
А менять стили на ходу легко, забавно, что ты этого не юзаешь, это главная фишка ксс модулей. Тебе доступен объект со стилями, и так же как ты обращаешься к классу, ты можешь обратиться к конкретному стилю и изменить его.
Короче, перед тем, как юзать, советую разобраться, нужно ли тебе это вообще, т.к. по-ходу ты вообще бессмысленно их используешь и у тебя больше гемора с разносом на кучу файлов и импорт в каждом компоненте нужного файла.
И вообще, в большом проекте ксс модули неюзабельны, особенно где верстку делает один человек, а логику другой. Т.к. верстала может где-то изенить имя класса, и всё нахер поедет, придется по всем компонентам проходиться, искать где используется этот модуль с измененными стилями. А т.к. у обычного жса нету статического анализатора (мы пишем на тс, поэтому тут немного проще), то ты заебешься это делать.
Заведи друга на двачах, и делайте друг другу подарки.
Если ты не знал, что можно менять стили находу после импорта - это не моя проблема, видимо ты не дорос ещё, что не удивительно, ведь прочитав говностатью на хабре, и начав использовать непонятную хуйню непонятно для чего, многого не поймешь.
Что за черновички? Заметки?
Вспомнил, как в 2007 писал на своем сименсе на Mobile Basic/Mobile Pascal/JCC приложеньки, потому что компа не было, вот это времена были.
А еще он медленней в синтетических тестах, чем реактоангуляры.
Все используют уже, у нас в компании месяцев 10 уже используется, с начала года по сути.
ES6 охуенен, я использую.
Вот думаю какой фреймворк выбрать, не хочу ванилить. Более менее знаю JQuery. Есть ли что-то более годное ? React ? Angular ?
Я сейчас в своем проекте React использую, годная штука. Однако в следующем хотел бы попробовать Angular. Хз, выбери что-то из этого.
кстати, я тут вспомнил что у меня есть самописнй модуль для JQuery, который мне лень переписывать. Они сработаются вместе с реактом (всмысле jq и react) ?
>>613883
видимо это мой путь, тут http://habrahabr.ru/post/229629/ сказано, что react спокойно может использовать jq для аякса, что мне в принципе подходит
В глаза ебешься? Я связал React и Flux, а не jQuery и Flux.
>реакт
>самый гибкий фреймворк
Одна история охуеннее другой. Реакт это не фреймворк вообще.
Продолжай дальше пребывать в мире своего шизофренического бреда, я тебе ничем помочь не могу.
Ангуляр - заебись
Или добавляй в прототайп или делай в конструкторе при вызове new
Вопрос решен уже.
На 10%
Я тут пишу приложение на ангуляре, что не так уже и важно на самом деле, так как вопрос заключается в основах JS.
Дело в том что у меня есть сервис (пикрилейтед) Month, в котором можно добавлять какие то события. Если событие отмечено как ежемесячное — мне нужно продублировать его во все экземпляры этого сервиса (создаются через new Month).
Вопрос заключается в следующем: как мне это сделать? Доступа к прототипу нет, или это я тупой и не смог найти способ. В общем, помогай.
Дано: Релейно-контактная схема, с парочкой конденсаторов для замедления времени размыкания фронтовых контактов. Пульт для задания режима работы этой схемы.
Требуется: Написать программу эмитирующую работу этой схемы, для обучения студентоты принципам её работы. В этой программе должно быть:
1. Пульт управление со всеми кнопочками и индикаторами.
2. Собственно схема, в которой будут подсвечиваться замкнутые контура, и будут менять своё состояние контакты реле.
Важной частью является возможность пошагового пролистывания событий. Например - нажал кнопку "А", в схеме от полюса П до тылового контакта реле "А1" подсветилась нить, далее она идёт через фронтовой контакт реле "Б2", далее включает реле "В" и т.д.
Не могу пока допереть до алгоритма реализации этой схемы и графического отображения процесса её работы. Может у кого есть идеи? Фреймворки, которые помогут реализовать прогу?
1 раз
Что использовать то тогда? Фабрика — тоже синглтон, хотя по идее должна плодить объекты.
каждый сервис возвращается фабрикой (которая тоже синглтон) в количестве 1 штуки.
Плодить их с new плохо, так пидоры делают.
Схема будет одна.
главное знать что делаешь.
Рисуешь все в векторном редакторе, инлайнишь свг и подсвечиваешь дорожки по нужным событиям (прямо на нарисованные кнопки вешаешь events). Любыми удобными тебе способами/фреймворками/whatever.
>В глаза ебешься? Я связал React и Flux, а не jQuery и Flux.
Ты ебанутый?
Был пост:
>react спокойно может использовать jq для аякса, что мне в принципе подходит
Ты ответил на него какого-то хуя вот
>Ну можно, но вообще React принято использовать с Flux архитектурой
Из чего я делаю вывод, что ты долбоёб.
>Реакт это не фреймворк вообще.
Хахаха бля
Да, ты прав, реакт это не фреймворк.
Реакт это огромная экосистема, которая уже больше любого фреймворка.
Проиграл с аутиста. Какая разница, чем отрисовывать?
Спасибо!
MEAN
По моему годня штука для не синглпейджей, хочу вот попробовать.
Хуйня в том, что в моей конторе никто не заинтересован в использовании того же ангуляра. Все пхп макаки пишут свои jquery-велосипеды для обработки роутов и вызовов модальных окон, на кой хрен не понятно. А я по большей степени верстаю.
Скорее всего, они про него просто не знают. Или не знают зачем он нужен.
Просвяти их, сделай доброе дело
> Или не знают зачем он нужен.
>Просвяти их, сделай доброе дело
Да всё они знают, просто им проще писать на jquery чем изучать что-то новое
Но ведь намного проще писать на ангуляре. Поэтому мне и кажется, что они не знают ничего
>>615549
http://nodeguide.com/
Спасибо.
Учу жабу, решил написать змейку, раньше реализовывал наследование без использования "this." в конструкторах, а создавал в "конструкторе" главного родителя объект self, с которым работает весь конструктор и в конце возвращается функцией. Сейчас стал использовать, как мне показали на codeacademy.com, "this." и у меня получается какая-то хуйня при попытке оверлоаднуть метод родителя.
Значит у родителя Entity есть метод update без параметров который просто вызывает свой же метод draw.
У ребенка Head в родителях Entity и его метод update который наследуется у родителя работает и вызывает draw который так же наследуется и всё рисуется как и должно.
Но стоит мне прописать у ребенка:
var superUpdate = this.update;
this.update = function() {
superUpdate();
}
, как начинается хуйня, при чем метод он нормально запоминает в superUpdate и его вызывает, но при выполнении говорит что нет метода this.draw. Какого хуя? Гугл не помог.
Точно, меня подвёл var. Спасибо, Антон, я джва часа понять не мог, а ты пришел и сразу всё понял!
Не могу догнать, что оборачивать в connect. Сто раз уже прочел тутор, но нет понимания. Это я пытаюсь совместить редукс с реактом. Я обернул основной компонент в провайадер, и передал ему стор редукс. Объясни пожалуйста, как правильно сделать все это.
Допустим есть функция fn внутри которой setTimeout, она возвращает строку с текущей датой. Есть плагин gulp-zip, который принимает имя (результат вызова fn) и объект с настройками. Короче, gulp-zip не дожидаясь выполнения fn завершает работу с ошибкой: filename required.
нюфаня
есть обработчик события onkeypress, как сделать так чтобы событие обрабатывалось не чаще чем в заданный период времени
дегенерат разобрался сам, можете не отвечать
setTimeout выходит из потока и срабатывает уже после того как твоя функция выполнилась.
Зачем ты используешь setTimeout в синхронном коде?
Забей, вещи вроде реакта и редакса могут лишь одолеть люди с iq от 180.
Там есть маленькая проблема, что книги толковые еще не написали, статьи пишут люди, которые на реакте сами два с половиной проекта успели замутить и побежали хвалиться и рассказывать остальным как надо, а документация довольно психоделическая. Лично я хороших ресурсов пока не видел и документацию считаю недружелюбной для новичков (и когда говорил тут об этом, меня хуями покрыли в несколько голосов, так что давайте посмотрим, что благородные доны предложат), но в первую очередь имеет смысл походить по ссылкам в awesome листах:
https://github.com/enaqx/awesome-react
https://github.com/bcbcb/awesome-react
>и когда говорил тут об этом, меня хуями покрыли в несколько голосов
Обоссыкиваю тебя ещё раз.
learn.javascript.ru
тебе станут в пропс компонента доступны state и dispatch
Анон, как быстро это вычеркнет из требований заказчиков поддержку старых IE?
Будет зависить от того как быстро пользователи перейдут на новые версии ИЕ из-за то что старыми они не могут получить technical support и установить security updates.
Декоратор! Возьми этот декоратор с полки, и выпей чаю.
Можно на ангуляре, на котором на работе пишу, но хочется расширить кругозор, восприятие, и как-то чтоб в плане поисков работы в будущем пригодилось
Он разве уже релизнулся?
И откуда инфа, что хомячье будет им пользоваться так же активно как первым?
Бешеный пиар гугла, сейчас все с реактом наиграются и на второй перелезут.
Нормально ли будет, если будут ссылки вроде
https://2ch.ru/user/f4091876df6a5d39e6690b7395a95399 (М) ?
Заранее спасибо.
Я на sailsjs и waterlock запилил. Токен отдается.
А что с ангуляром делать не знаю, не могу подходящий модуль нагуглить, а самому влом писать
Да. Да. Решай сам.
На первом, если разобраться, любая макака может писать, а от второго у меня пока АХУЙ
Особенно от typeScript этого
Делаю так:
// забираем данные из инпутов
...
// делаем числа числами
x = parseInt(x);
y = parseInt(y);
// обработка ошибок если числа — не числа
...
// результат
var result = eval(x+op+y)
Какие подводные камни использования eval в данном случае? учитывая что op - результат select, а не рандомная хуйня, которую напишет юзер.
>выполнять математические операции введенные клиентом
>математические операции
>Laba2.rar
>клиентом
Напиши фабрику абстрактных операторов и провайдер сервисов вычислений, дальше все просто.
>Но нахуя?
Ну вот надо тебе сделать возведение в степень через ^, твои действия? inb4 ждем es7 и используем
Замечательно. А можешь объяснить как примерно это делается? Я что-то подобное на сишечке или не на ней, хуй знает видел, там было просто, что-то вроде этого
(заменяемое слово) (команда замены) (замена)
То есть одной командой, ну и переменные выше. Тут иначе?
Как это делать я разобрался
var re = /заменяемое слово/gi;
var str = тут надо заставить скрипт сканировать или посты, или всю страницу;
var newstr = str.replace(re, 'замена');
Но моих знаний немного не хватает, я не могу понять как мне искать посты где скрипт будет делать замену. Пытался еще найти как заставить скрипт проверять всю страницу на наличие заменяемого слова, но тоже не нашел, слишком сложно. Выручайте, анончики, не осиливаю.
Скачай куклоскрипт и посмотри, как там сделано.
Можно, например,
var posts = document.getElementsByClassName('post-message');
for (i=0; i<posts.length; i++){
posts.innerHTML = posts.innerHTML.replace('класс', 'сахар');
}
Что съела? Немного не понял, я вообще js не знаю.
А на счёт куклы - там 20 тыщ строк кода, слишком сложно. Кстати из за этого она жутко тупит, но без того же вордлиста читать сосач - нельзя, хоть переписывай под себя. Надо бы выучить этот ваш js, который похоронил веб.
webworker, Люк
нахуя на бэкенде прописывать роутинги, если можно в ангуляре разные вьюхи подсовывать?
> Кстати из за этого она жутко тупит
Че блять?
> Надо бы выучить этот ваш js, который похоронил веб.
Чеее блять?
Для апи тоже нужны роуты
Еще даже недочитал онлайн-учебник по JS из шапки, задам вопрос наперед.
Скажем, я написал простенький таск-треккер на node, в нем можно зарегистрироваться, создать аля группу/компанию/отдел и т.д; добавить туда других пользователей и публиковать таски.
Со временем в эту херню понадобилось добавить пару десятков видов организаций, пару десятков видов пользователей, пару десятков видов тасков. Много наследования, у каждого вида свои реализации интерфейсов. Еще со временем
надо считать заработанное бабло за выполненные таски - вот это все...
Анон, в какой момент следует смотреть на жабы/сисярпы итд? Пишут ли на ноде приложения с кучей сущностей?
Кому-нибудь попадалась такая книга? Может на каком-нибудь трекере...
> Анон, в какой момент следует смотреть на жабы/сисярпы итд? Пишут ли на ноде приложения с кучей сущностей?
Не понимаю в чем проблема. Почему ты думаешь, что сисярпы и джавы лучше справляются с большим количеством сущностей?
На ноде вполне можно писать в тырпрайз-стиле
> Скажем, я написал простенький таск-треккер на node, в нем можно зарегистрироваться, создать аля группу/компанию/отдел и т.д; добавить туда других пользователей и публиковать таски.
> Со временем в эту херню понадобилось добавить пару десятков видов организаций, пару десятков видов пользователей, пару десятков видов тасков. Много наследования, у каждого вида свои реализации интерфейсов. Еще со временем
Ну. Делай рест-апи с нужными сущностями, оно без проблем масштабируется
Вопрос следующий:
В чём разница между:
1)
arg = ['a', 'b', 'c', 'd'];
a = arg.slice(2);
2)
__slice = [].slice;
arg = ['a', 'b', 'c', 'd'];
a = __slice.call(arg, 2);
Второй вариант из описания кофискрипта. Первый вариант написал сам.
Зачем так изъёбываться, как во втором варианте? Какие этому оправдания?
как бы это из этого дерьма или убрать хтмл теги совсем, или юзерскриптом перепиздячить что бы оно их отображало по-человечески.
я так понимаю jQuery(html).text() как раз и чистит от такого говнища, но как его запустить внутри страницы? раньше была вроде штука писать что-то в адресной строке, но я уже не помню что именно и совсем не уверен что туда можно вписать жиквери
Чтобы показать какой кофескрипт лаконичный язык
Второй как бы более универсальный, работает не только с массивами, но и со всем, что выглядит как массив. Можешь почитать тут
http://stackoverflow.com/questions/2125714/explanation-of-slice-call-in-javascript
Ну собственно да, за этим я и пришел. Изучать язык у меня желания нет, я просто искал помощи. Куда еще обратится - я не знаю.
За скрипт огромное спасибо, работает, добра.
Имей в виду, что оно банально заменяет текст всего html'а, поэтому если ты заменишь слова span, class, spoiler или ещё что-нибудь, то что-то (или всё) может немного (или совсем) по пизде пойти.
А в кукле действительно всё запутано, через миллион функций проходит, и без единого комметария.
Пока тестирую, работает, такого заменять не планирую. Но вот мне нужно сделать так, что бы оно игнорировало регистр, что бы если находило определённое слово - нахуй его заменяло в любом виде. Почитал документацию - вроде понятно, но на деле не работает. Вот эта строка:
posts[n].innerHTML = posts[n].innerHTML.replace('класс', 'сахар' [, i]);
и еще много её менее аутичных вариаций у меня регист не игнорирует, просто ломается. Выхлопа 0. ЧЯНТД? Не могу я в ваш js, не могу.
Хорошо, с этим я тоже разобрался.
И последний вопрос, после которого я съебу из треда. Как мне сделать так, что бы скрипт смотрел в блок post-message каждого нового поста, полученного при помощи той же куклы? В юзерскрипте софтача для появления иконок os такое реализовано, обычный текст удачно заменяется на иконки в каждом новом посте, но я в силу своей неопытности не могу понять как это сделано, пусть там и 300 строк кода. Оче сложно?
не важно ангуляр там или реакт и вообще…
у меня есть массив объектов типа [{name: ‘Blip’}, {name: ‘Blopp’} итд]
если две вьюхи:
первая базово отрисовывает список
вторая - это форма с одним инпутом
вот я типа кликаю на элементе списка во вьюхе со списком
и в форме можно отредактировать name объекта соответствующего кликнутому по списку
так вот вопрос про биндинговую парашу: когда я в инпуте меняю текст, должен ли он меняться в списке у соответствующего итема?
А я не знаю, как и когда именно эти посты появляются, как за ними кукла следит, и есть ли какие-то человеческие ивенты, но можно вот с MutationObserver'ом накостылять: http://pastebin.com/cgkiZt8n
Наверняка это можно сделать красивше, без идиотской проверки на наличие getElementsByClassName (так как там и #text добавляется), да и без тройного вложения, но я пытался сделать наиболее очевидно.
В теории, конечно, в функцию dealWithMutation можно банально запихнуть все тре три строчки, что я раньше написал, но будет как-то не клёво при одном новом посте снова пробегаться по всему треду.
target можно сделать posts-form, как в закомменченной строке, тогда он будет по всем видимым тредам идти, насколько я понимаю, судя по вложенному div'у с номером треда. Но он там всегда один (с кучей лишних постов, правда) и можно ли видеть одновременно несколько тредов - не знаю. Так что можно не париться особо.
В очередной раз огромное тебе спасибо, работает как часы. Наконец-то я смогу нормально читать сосач!
Ясно. Спасибо за объяснение!
> когда я в инпуте меняю текст, должен ли он меняться в списке у соответствующего итема?
В каком смысле должен?
В ангуляре, например, если инпут и текст в списке привязаны к одной модели в одном контроллере - будет меняться.
Ну у тебя там и жопа в коде пиздец.
Но я разобрался, у тебя нету формы в хтмле, поэтому строка, где ищется форма кидает ошибку и дальше код не выполняется. Поэтому на ссылку не вешается обработчик, а т.к. на ней стоит якорь "#", то тебя просто кидает вверх страницы.
Я же сказал, у тебя формы нету в хтмле почему-то, лень разбираться почему, т.к. там полная жесть. Посмотри в дев тулзах, на месте формы тупо нету ничего, нету самого тега даже.
кажется я тебя наконец-то понял. Действительно в инструменте разработчика почему-то не показывает форму. Только дивы показывает. В индекс файле все прекрасно показывает. Буду разбираться.
> качественно
api гуглокарт кури. И "современные ништяки" видимо, телепаты в отпуске. Без практики все равно jq-лапшичка получится, имхо лучше сразу садиться и начинать писать, по мере возникновения проблем поймешь, где пробелы.
Делюсь годными видосиками на тему функционального программирования на js.
Спасибо, антош, как тебе инвайт на лепру передать?
Как меня выбешивает манера речи этого лысого пидора.
Спасибо, Антош
>>Не понимаю в чем проблема. Почему ты думаешь, что сисярпы и джавы лучше справляются с большим количеством сущностей?
От недостатка кругозора. Начинал с Java, ООП-нациста.
Da.
Погляди loopback
Пикрелейтед.
Причем тут другие объекты?
Через this ты просто обращаешься к свойству этого объекта, в данном случае _age, как ты ещё к нему собрался обратиться?
А просто return _age не сработает?
return person.age точно должно сработать.
Ну вообще да - логичнее писать this чем название объекта.
>А просто return _age не сработает?
Нет, т.к. _age это не переменная, а свойство, а в таком виде интерпритатор будет искать переменную и не найдет её.
>Ну вообще да - логичнее писать this чем название объекта.
Ага, т.к. если ты вдруг захочешь его изменить, то тебе не придется по всему объекту менять обращения к свойствам.
Все ясно. Спасибо что пояснил.
А если полуговноед? Так сказать говноед-полукровка.
Поцоны, к вам в блатхату ковыляет стремящийся жава-арестант. Что посоветуете бывалому, чтобы просто и быстро въехать в js и html без всяких раздумий о великом? Хочу написать пару html страниц, где js будет обращаться к веб-сервису. В js ни разу не нырял. Знаю только что выполняется на клиенте и может сократить часть нагрузки на сервер, выполняя всякие проверки прямо в браузере.
Так ты мош или ты мош, но нужно париться и включать мозги на самом деле ето значет, что ты не мош?
Одна хуйня, там разница минимальная.
Пишу небольшую поделку браузерную, в нем у меня есть прогресс бар бутстраповский, который изначально выглядит вот так:
http://ideone.com/H1wU24
Далее в моем скрипте, я этот прогресс бар так сказать оживляю вот такой вот строчкой:
document.querySelector('#rankedBar').style = 'width:' + game.progress + '%';
В переменной game.progress соответственно лежит разное значение в разные моменты времени, и при выполнении этой строчки кода мой прогресс бар должен двигаться.
Суть в том, что в лисе всё работает хорошо, а в хроме полосочка не двигается. Не можете подсказать в чем проблема?
Объясни, я старый уже? По работе использую Angular 1.x, gulp, bower, npm, less и nodejs для бэка. Этого не круто, может не очень удобно, но минимально необходимо. В свое время я попробовал раби с сасс и мне казалось это очень удобным. Единственный путь, я тогда нахуярил проектик за выходные не зная ничего. Что сейчас? Как лучше? Bower не нужен? Webpack? NPM и browserify? LESS стар? Постцсс? Цсснекст? Реакт? Реакт еще норм? TypeScript? ES6? AMD? Ладно, заебись Yeoman же есть, сейчас извлеку себе весь стек? Да? React+babel+webpack+nodejs+ebolaPack+hyitaTranspiler? Блядь вы ноулайферы? Вы хотите просто жить? Делать простые вещи? Как ньюбасу войти в ваш водоворот? Или это и есть то заграждение? IDE редакторы? Вроде саблайм пару лет назад был модный, забросили? Что там? Атом? Почему так хуево? Почему он не поддерживает нихуя еще неделю выбирать плагины? Вы ебанулись там падлы? Я полгода уже пытаюсь заскочить в этот поезд. Сейчас новые уебаны запилят ЕБАРЕАКТ в котором будет разметка, логика ее, логика стилей, ведь это все одно целое!
/ custom properties /
:root {
--fontSize: 1rem;
--mainColor: #12345678;
--highlightColor: hwb(190, 35%, 20%);
}
Рогатые твари, ебать?
var TodoApp = React.createClass({
getInitialState: function() {
return {items: [], text: ''};
},
onChange: function(e) {
this.setState({text: e.target.value});
},
handleSubmit: function(e) {
e.preventDefault();
var nextItems = this.state.items.concat([{text: this.state.text, id: Date.now()}]);
var nextText = '';
this.setState({items: nextItems, text: nextText});
},
render: function() {
return (
<div>
<h3>TODO</h3>
<TodoList items={this.state.items} />
<form onSubmit={this.handleSubmit}>
<input onChange={this.onChange} value={this.state.text} />
<button>{'Add #' + (this.state.items.length + 1)}</button>
</form>
</div>
);
}
});
Эти секут, говорят норм пацаны, сейчас пофиксим:
<todo>
<!-- шаблон -->
<h3>{ opts.title }</h3>
<ul>
<li each={ item, i in items }>{ item }</li>
</ul>
<form onsubmit={ add }>
<input>
<button>Add #{ items.length + 1 }</button>
</form>
<!-- стили -->
<style scoped>
h3 {
font-size: 14px;
}
</style>
<!-- логика -->
<script>
this.items = []
add(e) {
var input = e.target[0]
this.items.push(input.value)
input.value = ''
}
</script>
</todo>
Ебать!
/ custom properties /
:root {
--fontSize: 1rem;
--mainColor: #12345678;
--highlightColor: hwb(190, 35%, 20%);
}
Рогатые твари, ебать?
var TodoApp = React.createClass({
getInitialState: function() {
return {items: [], text: ''};
},
onChange: function(e) {
this.setState({text: e.target.value});
},
handleSubmit: function(e) {
e.preventDefault();
var nextItems = this.state.items.concat([{text: this.state.text, id: Date.now()}]);
var nextText = '';
this.setState({items: nextItems, text: nextText});
},
render: function() {
return (
<div>
<h3>TODO</h3>
<TodoList items={this.state.items} />
<form onSubmit={this.handleSubmit}>
<input onChange={this.onChange} value={this.state.text} />
<button>{'Add #' + (this.state.items.length + 1)}</button>
</form>
</div>
);
}
});
Эти секут, говорят норм пацаны, сейчас пофиксим:
<todo>
<!-- шаблон -->
<h3>{ opts.title }</h3>
<ul>
<li each={ item, i in items }>{ item }</li>
</ul>
<form onsubmit={ add }>
<input>
<button>Add #{ items.length + 1 }</button>
</form>
<!-- стили -->
<style scoped>
h3 {
font-size: 14px;
}
</style>
<!-- логика -->
<script>
this.items = []
add(e) {
var input = e.target[0]
this.items.push(input.value)
input.value = ''
}
</script>
</todo>
Ебать!
>>619183
В голос. Все, в общем-то, так и есть
Лучше не бегать за трендами, а учить то, что чем-то обусловлено.
Ангуляр или реакт маст лерн. Они не умрут до тех пор, пока живы гугел и фб, или им на смену не придёт что-то новое от этих же корпораций.
Сборщики - вкусовщина. Они все примерно на одном уровне недоразвитости.
Цсс-препроцессор нужно учить тот, на котором бутстрап. 4-5 будет на постцсс.
https://github.com/twbs/bootstrap/issues/16366 - скорее всего будет порт
https://twitter.com/mdo/status/591364406816079873 - пятый точно на посте
В общем разобрался сам, я думал тут люди сидят которые шарят, а вы только на технологии новомодные дрочите, и выебываетесь друг перед другом, удачки вам в новом году, мои хипстопетушки.
Ну вот, о чем я и говорил. Одни хоронили весь год SASS, другие пилят. И с TypeScript. И теперь PostCSS. Как же я хочу времена, когда хипстеры писали на Ruby + Rails + CoffeeScript + SASS. Короче мне деваться некуда. Я C# макака, которая полгода как перекатилась во фронт по случайности. И мне похуй, я хочу выучить что-то кроме ангуляра. Но я не хочу ебаться с каждым пакетиком.
document.querySelector('#rankedBar').style.width = game.progress + '%';
function new_new (Constructor) {
var objPrototype = Object.create(Constructor.prototype);
var instance = Constructor.apply(objPrototype);
return instance;
}
function Person (name) {
this.name = name;
}
Person.prototype.sayHi = function () {
return 'Hi, I am ' + this.name;
};
var guy = nouveau(Person);
console.log(guy); ---> undefined
return instance === undefined ? objPrototype : instance;
И пусть мушку спилит
За валидацию данных только на фронте Б-г накажет.
Ну а на беке какая разница на чем, бери и валидируй.
Вот нахуя вы таким занимаетесь, поехавшие? Вы действительно думаете, что чем-то подобным будете заниматься на работке?
Благодаря валидации данных на фронте можно сократить количество запросов на бэк
>Благодаря валидации данных на фронте можно сократить количество запросов на бэк
Поэтому и написал
>За валидацию данных только на фронте
А так вроде бы есть несколько сценариев.
Предвалидация на клиенте, предвалидация на клиенте с обращением к стороннему сервису, предвалидация на клиенте с обращением к собственному бэку. Вроде проблем ни с каким вариантом быть не должно, а остальное по обстоятельствам.
Это просто чтобы подчеркнуть, что происходит предпроверка поля до сабмита формы, во время которой происходит обращение к собственному бэкенду. Это когда логика проверки достаточно сложна и требует обращения к данным хранящимся на бэкенде, например.
Это чисто "декоративная" фича пользовательского интерфейса, облегчающая пользователю ввод, она может предупредить об ошибке до того, как пользователь отправил форму. После отправки формы, конечно, данные все равно валидируются на сервере.
Линтеры / Умные ИДЕ / Трансплиттеры
Просят и на стороне клиента и на стороне сервера.
Алертами валидируют только ньюфаги, в реальных проектах никогда такого не встречал
посмотри как в джанге сделано
Как именно связана валидация и алерты?
>не понимаю, зачем проверять жабаскриптом, не пустые ли поля, если это можно сделать поставив required инпуту
Дезигн, обратная совместимость, кастомное сообщение?
>нет, конечно, кто-нибудь может пофиксить хтмл через консоль, но зачем
На стороне клиента можно сделать что угодно. Если поле обязательно для ввода, его наличие все равно должно проверяться на стороне сервера, чтобы обеспечить целостность данных.
>>619660
>Можно полностью валидировать на хтмл
Ну отвалидируй на html ИНН, например, или БИК.
> Ну отвалидируй на html ИНН, например, или БИК.
Да хоть номер паспорта
http://htmlbook.ru/html/input/pattern
>Да хоть номер паспорта
В ИНН или в ОГРН, например, есть контрольное число, они вычисляются на основе основного кода и паттерном ты его никак не провалидируешь.
В БИКе мне казалось тоже есть контрольное число, но сейчас перепроверил, его там нет, так что можно будет написать регулярку, делающую проверку правильности формата, но проверять реальность существования БИКа, все равно не получится.
Пиздец, тебе уже сказали 10 раз, чтобы сразу дать пользователю алерт, если он что-то очевидно неправильное вводит, что нужно.
Вот в том то и дело. Итог вчерашнего дня. Решил запилить каталог с годнотой 2015-го, со всякими риалтайм группировками, сортировками. Взял ноду, реакт, браузерифай и прочую парашу. Выбрал CSS фреймворк, basscss, есть более-менее популярный пакет для реакта rebass. Заебись, но он поддерживает только jsx. Я хочу что бы все рендерилось из ноды с экспрессом. И тут я проиграл. Давай еще устанавливтаь реактифай и тут у меня уже охуевший список в package.json, хуеты о которой я прочитал по минутке ридми для аутистов, которые забывают поддерживать свое говно. Кое что я даже форкнул и поправил. Итог? За три дня имею основу, в которой нет нихуя. Ну что это такое? До этого день еще потрачен на петушение с йоманом. Хотя сейчас может это и актуально, после того как изучил, извлечь чистую структурку проекта. А так толка никакого, один хуй надо на все пики сесть прежде чем даже думать о выборе.
Ну пацаны, ахуеть, я же на любых технологиях до 2013 за 10 минут сделал все что мне нужно? Нахуй так жить? На ангуляре первом директивки наклепал, ахуенно, чистенько, сервисы выделил. Нахуй нужно вот это все? И ведь во всех вакансиях требуют.
В 2016 Dart мертв, теперь TypeScript, который был мертв несколько лет, но микрософт захайпил поновой.
В универе писали на плюсах немного.
Так вот когда сел смотреть js, мне наоборот понравилось что не надо объявлять типы, да пусть это может привести к преобразованию там и т.д. но все-равно в этом был какой-то шарм что ли. Правда я ниче сложного не писал пока и фреймворки не юзал (только js/jq)
А потом читаю что мол решили делать типизацию. Неужели это настолько важно, что ее надо было сделать, таким образом приблизив в какой-то мере js к другим языкам? Может я когда наберусь больше опыта тоже буду считать что статическая типизация это круто?
> Нахуй нужно вот это все? И ведь во всех вакансиях требуют.
Ты же знаешь как ашэр-девочки вакансии составляют?
Не понимаю нахуя ты этим занимаешься. Вроде ж опыт есть, должен понимать, что нужно, а что не нужно.
Статическая типизация нужна в больших проектах, в маленьких она только мешает, имхо
Ну и раньше ничего крупного на жс не писали, а сейчас бэкенды и фреймворки на десятки тысяч строк пишут, поэтому и запилили
Ох уж этот манямир.
Т.е. чтоб класс Dog принимал дополнительные параметры конструктора, помимо наследуемого от Animal - name.
И давайте, пожалуйста, без "аааа классоблядь, праваливай".
Ошибка: Uncaught ReferenceError: this is not defined, 12 строка
Так что ли?
Просто тупо переписывать конструктор от Animal и добавлять свое?
13 строка*
> Uncaught ReferenceError: this is not defined
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/super
Понял. Большое спасибо с:
Подскажи, пожалуйста, годный тутотриал. Чтобы шарпоблядь могла стремительно вкатиться.
Да там доки охуенные, в общем-то. И туториалы не нужны
http://threejs.org/docs/#Reference/Extras.Geometries/SphereGeometry
Для твоей задачи нужно только геометрию за 8 класс знать
Не знаю, я поехал за последние полгода. Стабильненько себе сидел, а потом решил сменить работу. Вроде как ближе к фронту обещали, а оказалось сильно близко. А теперь хочу в офис хороший, где (в моем манямирке) будет развитие. А крутые пацаны с гитхабами сейчас, а он мне не нужен был. Вот сейчас пытаюсь понять и понимаю. Понимаю что раскрыл ящик Пандоры какой-то. Как с этими хайпами разобраться и обрести спокойствие? Писать на том что знаю?
Я хочу создать массив из 50 нулей например, не писать же мне
var arr = [0, 0, 0, ... 0, 0];
Это дикая не читаемая параша из говна, тебе же сказали сделать циклом, нет, нагородил пиздеца
Я просто погуглил, так как в специализированном треде, спрашивая вещи касающиеся языка, не могу получить во второй раз внятный ответ. никакого баттхерта, я уже понял что тут не программисты сидят, а прост люди по интересам, которым прост нужно общение, вот они и общаются о всяких фреймворках и прочих вещах, а не задротят Циклом блядь они мне сказали массив заполнять, кекнул с них. Я пришел спрашивать не как программировать, а как делать что-то с помощью конкретного языка, ты чувствуешь в этом разницу?
Вот почитай, мб тоже интересно будет:
http://stackoverflow.com/questions/1295584/most-efficient-way-to-create-a-zero-filled-javascript-array#1295584
Реально ужасно вышло.
Если тебе прям вот чтоб одной строкой надо, то напиши отдельную функцию которая создает в себе массив, заполняет его передаваемым в функцию парамертом и возращает массив.
Если уж часто приходится создавать пустые, заполненые массивы в разных местах кода, то это самый лучший вариант.
В итоге тебе вместо того говна, надо будет просто вызвать функцию createArray(0) и всё.
Что может быть лучше?
Я уже изучил топик на оверфлоу, и выбрал из цикла, функции и "нечетабильной хуйни" именно её. Жаль что в языке нету из коробки этой самой
>createArray(25, 0) и всё.
> Жаль что в языке нету из коробки этой самой
> >createArray(25, 0) и всё.
Хочешь из жс пыху сделать, ирод?
Он хочет питон.
Лол, нет. Хочу что бы это за меня сделали сами разработчики JS. А самому каждый раз писать кучу говен в виде
function makeArrayOf(value, length) {
var arr = [], i = length;
while (i--) {
arr = value;
}
return arr;
}
Или таскать всё это в библиотеках повсюду, как-то не хочется.
>написал хуйня с мапом
>функциональщина
Мой тим лид тебе бы ебало разбил за такую "функциональщину"
Пиздец, люди считают, что использовав мап они "функциональное программирование" юзают. лол
>>620179
Ты троллишь или тупой? Тебе первым ответом сказали сделай цикл, хули ты плачешь теперь
>не могу получить во второй раз внятный ответ
Слепой нытик
>>620184
Вообще-то она есть, только ты даже на СО не смог дочитать до места, где говорят как сделать это нативно, даун
Функций на всех не напасешься. Всё равно кому-то чего-то будет нехватать. Потом из-за этого будет куча легаси. Путь пыхи, в общем.
Поэтому и решили, что либы наше всё. Каждый берет и делает то, что ему нужно.
>Мой тим лид тебе бы ебало разбил за такую "функциональщину"
Такая беспалевная попытка сразу придать себе весу, ладно.
>Слепой нытик
мммм
>Вообще-то она есть, только ты даже на СО не смог дочитать до места, где говорят как сделать это нативно, даун
Ну так ткнул бы пальцем в это, вместо этого высера и попыток тут самоутверждаться.
Тоже здравая мысль, плюс те в кармочку.
>Такая беспалевная попытка сразу придать себе весу, ладно.
Кек, т.е. для тебя иметь тим лида это уже весомо? Ты ебанашка? Работал хоть раз в жизни-то?
>Ну так ткнул бы пальцем в это, вместо этого высера и попыток тут самоутверждаться.
Высер - это всё что ты пишешь.
Ткнуть пальцем я теперь тебе только в глаз могу, правда у тебя их уже нету скорее всего, т.к. меньше ебаться надо в глазенки свои.
Нахуй иди, мразь, я тут чуть-ли не с первого треда сижу и всем помогаю, а такие мудаки как ты, которые не могу создать пустой массив через цикл, и не умеют на СО читать дальше ответа с галочкой, вот такие тут точно не нужны. Ещё и выебывается, после того, как ему сказали, что он парашу написал, вот лол
Про другие браузеры в курсе? Про мобильные браузеры в курсе? Про то, что бывают непоследние версии в курсе? В ёбич прописать?
Я вообще только зашёл, увидел твои бугуртопосты и решил написать, что ты хуила, который только шитпостит. С таким настроем в б пиздуй.
Смотрите, необучаемый долбоёб в жс-треде. Ой, а в жс-треде же все такие.
По себе других не судят
Самокритично
В том, что у тебя сервер и данные живут отдельно от интерфейса.
Ты можешь использовать один и тот же сервер для общение и с клиентами на пеках, и на мобильных приложениях, при этом ничего не меняя в архитектуре.
https://github.com/petehunt/react-howto
делают, это изоморфность называется.
полезно тем, что можно поделиться / сохранить в закладки ссылку именно на item 51, а не клацать каждый раз в SPA в его поисках.
Знаю Jquery, знаю немного синтаксис Javascript'а и че там как делается, но писать не умею, да и не хочу.
Как вообще можно понять что ты знаешь ванильный JS и начать переходить к фреймворкам?
Другой анон
> думают, что если они умеют вызывать функции, так они жс знают.
Может существует какой - нибудь список must know вещей зная которые можешь переходить к фреймворкам?
Это всё очень индивидуально. По идее ты это сам должен понять просто "пробуя" фреймворк. Можешь работать - прекрасно, не можешь - ищи пробелы в знаниях.
Это тот же самый роутинг как бы
Пример я скопировал из книги, в контексте которой, нужная тебе функция является методом Array.
>JavaScript should have provided some form of an Array.dim method to do this, but
we can easily correct this oversight:
>should have provided
Контекст такой. Какая разница? Пусть будет function huy(dim, init) {...} или var ya_tupoi = function (d, i) {...}
Вот, посмотри, еще можно пилить матрицы с исходными значениями
https://jsfiddle.net/9j9h73rn/
Это всё из JavaScript The Good Parts.
https://jsbin.com/levudaniqu/edit?html,js,console,output
Ну я учился на программиста, но там дальше паскаля, да делфи не уходило. У каждого свои возможности.
Я дочитываю первую книгу по JS и программированию вцелом. Смею предположить, что document.querySelectorAll возвращает массив или массивоподобный объект, короче, список элементов. В этом вся суть
Понятия не имею, извини.
Скажи, разве это не то, что тебе нужно?
https://jsfiddle.net/3cbsrjrj/
>Я хочу создать массив
✔
>сразу заполненный нулями
✔
>не писать же мне 50 нулей
✔
Я же тебе написал, что скопировал из книги.
Массив можно создать, например, просто с помощью литерала массива:
var ar = [ 'a', 'b' ];
или вот так:
var arr = Array('a', 'b') // результат аналогичный
Автор грит, что искаропки нехватает какого-нибудь метода типа Array.dim, который бы принимал два аргумента количество элементов и исходное значение для них. И предлагает реализацию. Просто, блять, размышления на тему, что не так?
И что там устарело-то? Окей, ну уменьшился его список Сильных сторон к 2016 году, я в курсе, от этого что в книге какая-то хуйня написана?
Ты хочешь что-то сказать про this и про method invocation pattern?
Типа есть Object.prototype.method = function (name) { this.name = name }; и при вызове метода, например, так:
peka.method('yoba') this связывается c объектом, в котором этот метод содержится? peka
И, поскольку, dim просто создает массив, заполняет его числами и возвращает результат, никак не взаимодействуя с объектом Array, методом которого он является, это все бессмысленно и тупо?
>нету смысла такую функцию прикреплять к какому-то объекту, если она не воздействует на объект
Так делать, как в книге, это быдло код? Можно ли объект использовать просто как хранилище? В Array хранить, потому что метод создает массивы.
синтаксис пока подучил, а приемы программирования — нет.
Да, так делать это быдло код.
И хранить там тоже не следует, т.к. привязывая функцию к глобальному объекту, ты всем объектам её даёшь в пользование, а она им вообще не нужна, т.к. на них не действует.
>>621101
По началу книга легкая и интересная, но потом сильно сложнее становится, новичку будет трудно. Попробуй почитать первые глав 7-10 там норм.
Правда от так называемых project'ов ты там точно охуеешь, можешь даже не заморачиваться с ними.
Они хуевые/ненужные или просто слишком сложные для новичка? Пердолинг меня не пугает
другой-нюфаня
Слишком сложные, очень большой уровень абстракции.
Когда читал первое издание засыпал от скучности/сухости этой книги и судя по форчонгу и реддиту не мне одному так казалось. Даже автору это говорили кажись кек. Надо будет второе издание пролистать.
Лучше отдельно пройди learn.javascript, а потом уже к этой можешь подходить. Книга ближе к середине становится сложноватой, без понимания, как там все внутри работает, что-то действительно уяснить ньюфагу сложно.
Сам пробовал, но дропнул. Кантор основы лучше поясняет.
Илья Кантор - автор учебника learn.javascript.ru
Лол, вот что то, а написана она очень интересно
решаю упражнения отсюда
http://dkab.github.io/jasmine-tests/?spec=6
скажите мне, я уебан кривой или решение и должно таким быть?
Вот есть у меня бэкенд на ноде и фронт на ангуляре. Нжиникса и монги ещё нет. Как можно настроить это всё в каком-то бандле, чтоб удобно на сервере развернуть?
Вот у ребят с пхп-треда есть ОП который делает кодревью, у меня же такого нет и я всё делаю сам.
Насколько вообще важен кодревью?
Ну, допустим, я собираюсь сейчас засесть за крупный проект по моим меркам - бложек на ноде и реакте, аналог еверноута только с заточкой под погромистов.
Сделаю я правильную архитектуру в целом, продумаю структуру проекта, напишу код и покрою тестами, всё выполню по стандартам и всяким там airbnb гайд лайнам.
Но... вдруг мой код лютое говно и за такое убивают нахуй? Где-то реально получить кодревью? Или всё это нормально и главное, что я могу решать поставленные задачи, покрывать их тестами и писать вразумительный код придерживаясь определённых стандартов без лютых пиздецом?
Улучшил твой код: http://pastebin.com/aXkgAkPv
Вот замечания:
Давай понятные имена переменным, вместо arrArgs, result и arr - memoizedArgs, callArgs и resultArgs
Вместо того чтобы делать array.reverse() и потом вызывать pop(), можно использовать shift()
Проверяй длину массива без сравнения с 0, не так: if (arr.length !== 0), а так: if (arr.length)
Вместо сложного условия цикла можно было в теле написать if(!callArgs.length) break
Просто следовать всяким гайдам - это не поможет если ты не понимаешь, зачем это всё нужно. Это ведь нужно не для того чтобы "тебя за такое говно не убивали нахуй". Люди придумывают какие-то стандарты и правила написания кода не просто так, а по объективным причинам - потому что код написанный по-другому работает плохо. Код вообще зачем пишут? Чтобы он работал как надо, решал поставленную задачу. Поэтому делай всё более сложные задачи и понимай на своём опыте, почему нужно писать код определённым образом.
вот нам рассказывают ниибаца доклады про правильные архитектуры, подходы, МВЦ блять, истории ахуеных реализаций… ну кароче
открываю я такой в дэв тулз твиттор
и вижу пикрилэйтэд
хтмл в дата атрибутах, у которого тоже есть дата-атрибуты в которых хранятся данные
в дата-атрибутах хтмл, Карл
Фронтенд не хотел @ бэкэенд не старался
ну json - это типа чистые данные, это далеко не хтмл,
а дата-атрибуты типа как раз для данных,
так что вроде все логично
но на своих конференциях они, как и все, толкают типа про чистые слои,
про отделение данных от представления и все такое,
а на самом деле такие вот лицемеры и хранят json в дата-атрибутах
разве что, чтобы не тянуть их еще раз аяксом,
они их вставляют в хтмл отправленный прямо с сервера
>а на самом деле такие вот лицемеры
Просто громче всех кричат о соблюдении чистых принципов те, у которых от их отсутствия больше всего болит.
У кого с архитектуркой и стандартами норм, тем громко кричать не нужно. У них даже не знающий человек пришедший с улицы быстро всему научится, хотя бы глядя на то, как делают другие.
Ну а у те, у кого изначально бардак, будут корчить из себя дохрена проповедников чистого стиля. Такой вид компенсации, короче.
Узнал себя.
Делаешь запрос на бек, в коллбеке при успехе создаешь стор с пришедшими данными.
Ты вообще с асинхронностью не работал никогда?
5 дней как с промисами ебусь, я рельсовик, с жс знаком слабо, суть в том что все эти коллбеки исполняются всегда и при любом исходе позже, чем иницилиазируется стор, пример бы наглядный к этому всему.
Гуглил эту проблему, проблема известная, и вот в оф гайде вот такое предлагается.
// Grab the state from a global injected into server-generated HTML
const initialState = window.__INITIAL_STATE__
// Create Redux store with initial state
const store = createStore(counterApp, initialState)
Вот только тоже не получается засунуть данные в __INITIAL_STATE__
Алсо, запросы делаю через axios, может в ней проблема?
С /auth/login на api/v1/auth/login, например
Или если ты прям по хардкору какие-то невъебенные промисы пилишь, то будет скорее всего так
ajax('url').then(function(data) { createStore(xyu, data); }).catch(function(error) {throw error;})
Блять ахаха, какая известная проблема, если вы не умеете с асинхронностью работать?
То, что я выше написал, больше там тупо ничего нету.
Посылаешь запрос, если он разрешиться успешно, то будет исполнять then функция или её аналог, если придёт ошибка, то выкинет ошибку, всё.
Код не блокирующий, поэтому операции которые надо сделать после промиса надо именно в коллбеках писать, если ты напишешь их друг за другом, то промис отправится, но результат не придет, и естественно твой стор не создается, если ты так делаешь.
Ты пидорахен? Я же сказал это псевдокод, я что тут должен блять расписывать как хендлить ошибки ещё, если я даже не знаю, что там за ошибка может быть? Иди нахуй, уёбок.
Но ведь ты никого не затралел
http://pastebin.com/ZdY4Szr3
Не пойму, как сразу создать стор и послать ему данные, разве что два раза преодпределять, но в итоге там все равно пусто.
Ещё раз объясняю.
1) Промисы и все аналогичные штуки не блокирующие
2) Ты посылаешь просим
3) Потом пишешь консоль лог
Это штуки исполняются почти мгновенно друг за другом, но промису чтобы получить ответ нужно время, поэтому он ещё не успел создать стор, когда ты написал консоль лог.
Промис всегда возвращает другой промис, поэтому если ты делаешь что-то типо того:
var ololo = ajax('xyu').then((data) => doStuff(data));
То в ololo у тебя будет сам промис, а не данные, но в коде выше ты вроде всё верно делаешь, на первый взгляд, кроме того, что консоль лог должен быть внутри коллбека.
Алсо, может быть в импортах какия-то проблема, хз, но промис у тебя написан вроде верно, должен стор создаваться.
На торрентах можно купить?
Конечно же тебе нужно ПРЯМО в коллбеке присваивать стор, а у тебя получается функция get(Store() вообще нихуя не делает, т.е. она во первых никуда не присваивает возвращаемое значение, а во-вторых даже если бы присваивала, то у тебя там лежал бы промис. Делай всё в коллбеке.
Создаю стор внутри колбека, но не могу присвоить ее в переменную стор чтоб экспортировать. пиздец, я со вчерашнего дня сижу, и не лягу спать пока не сделаю это.
Сам-то стор нормально создается теперь?
Почему не экспортируется?
Может проблема в константе, их же нельзя переопределять.
Или всё таки как я выше сказал, проблема в импорте, в ес6 нельзя динамические импорты делать, может с этим что-то связано.
В общем хз что там дальше, но по-крайней мере, я думаю, ты в промисах немного разобрался, лол, и если внутри промиса стор есть, значит проблема уже в другом месте.
Стор создается внутри колбека, вот только вытащить его за пределы колбека не удается, но, это хоть какой то прогресс, спасибо.
Но судя по тому, что он спрашивал sleep или delay, ему нужна именно пауза.
И setTimeout можно использовать как паузу, если обернуть большое количество кода.
[CODE]var nameString = function (name) {
\treturn "Hi, I am" + " " + name
\tconsole.log(nameString);
};
nameString("Le");[/CODE]
Просто скажи мне, where i did go wrong
var nameString = function (name) {
return "Hi, I am" + " " + name
};
console.log(nameString("Le"));
спасибо за поправки, Антош
только не понял, почему ты используешь for(.. in.. ), а не простой цикл
td.innerHTML = 'TEXT';
Хоть в дебагере все как надо, но на странице строка не отображается внутри клетки
Разобрался
В элементах полученных с помощью жеквери innerHTML не работает
Нужно использовать функцию html()
Потому что не может ни в ванилу ни в жиквери
Суть: страница с перечнем товаров. Три колонки, название, количество, цена, добавить/убрать. Поиск на странице. Что нужно: сортировать по названию и цене, чтобы менялся вид кнопки при сортировке. Добавлять и удалять товар (на строке данные-название, колво, цена, как в шапке). Изменять товар и после изменения помещать его в конец таблицы. И разные требования к фильтрации, но это понятно.
Шаги (как я думаю). Создать асс. массив, в нем подмассивы, Товар 1, Товар 2 и тд. В каждом из этих подмассивов свои данные (название: товар кастрюля; количество: 3; цена: 666). Соответственно во втором подмассиве будет (название: товар вилка; количество: 8; цена: 777) и тд, верно? Далее, функция для проверки данных. Чтобы в колонке цена только цифры, в названии-буквы. Но как это прописать-я не знаю. Так же вроде ясно, что в таблицу добавляются и удаляются строки методом push. Так добавлю новый подмассив Товар 4, допустим. Но как его заполнить? или он уже пустой будет? И все это дело должно быть обернуто в таблицу.
Я так понимаю, ее отдельно сверстать в хтмл, а в ячейках как-то прописывать отображение элементов массива. Но я не знаю, как это сделать.
Заранее спасибо за любые комментарии, понимаю, что все это слишком даунски описано и такие вопросы не задают, а гуглят. Но руки опускаются и не знаю, с чего начинать вообще. Конкретики в голове по языку нет. Правда, спасибо хоть за какое-то объяснение и направление. С курсами пока точно ничего не светит, но язык хочу понять. Про лернджаваскрипт знаю
Юзай ангуляр и не сходи с ума
>>622026
https://translate.google.com/translate?hl=ru&sl=en&u=http://jqueryvalidation.org/
Незачем было запоминать метод в глобальной переменной, надо было его в свойство кидать
>this.superUpdate = this.update;
В глобальных ему делать нечего, хотя с call, как я понимаю, он бы тоже работал.
Алсо змейку неделю назад закончил, оказалось легче чем я думал.
Ебана, я хуйню сказал похоже. Оно не было глобальной переменной, а локальной конструктора, верно? Я еще не дошел до теории работы функций-конструкторов. У меня голова трещать начала. Есть ли разница между объявлением локальной переменной в конструкторе и там же свойства через this?
Или вообще - адаптировать под все основные браузеры (Опера, Сафари, ФФ, Хром).
Какие ньюансы нужно учитывать?
Не могу нагуглить ничего, изкоробки в ФФ не заработало.
Ну а как их продвигать-то? Хотеть траффик с поиска.
А на чем визитки писать, если я воннабихипстор фуллстек js-макака?
Визитки с регистрацией и прочей хурмой. То есть без сервера не обойдешься.
> Ну а как их продвигать-то?
Делаешь главную страницу полулендингом с сео-текстами. Я так делаю, работает.
> А на чем визитки писать, если я воннабихипстор фуллстек js-макака?
Зачем вообще делать визитки на ноде? По-моему ты неправильно инструмент выбрал.
Понимаешь, что тебе придется держать инстанс ноды, который жрет 300 мб из-за сотни человек в день?
>Делаешь главную страницу полулендингом с сео-текстами. Я так делаю, работает.
Хуево это конечно, но понятно.
>Зачем вообще делать визитки на ноде?
А на чем их делать, чтобы модно-молодежно было?
> Хуево это конечно, но понятно.
Почему хуёво?
У меня в приложении просто нечего индексировать. Вот есть страница авторизации, дальше гуглу нельзя. Ну и чтоб гугл понял о чем сайт, отдаю ему сео-тексты.
Можно, конечно, использовать инструменты вроде https://prerender.io/ , если так уж хочется визитку на ангуляре. Но мне кажется, что всё это как-то странно.
> А на чем их делать, чтобы модно-молодежно было?
Тебе нужно модно-молодежно или правильно и удобно? По-моему ничего лучше пыхи для визиток не придумали.
>Почему хуёво?
Потому что в одну страницу напихать много текстов не получится. И с конкурентами на сео-поприще бороться не выйдет особо.
Вот это нормально уже.
>По-моему ничего лучше пыхи для визиток не придумали.
Окей, надо будет попробовать как-нибудь.
Спасибо за консультацию.
Анончики, а есть какие-то лучшие практики использования web-сокетов? Например, имеет ли смысл делать несколько соединений в одну страницу страницу или все данные передавать по одному? Как анализировать эти данные, это json с параметрами или можно что-то другое с ним вытворять?
>>622236
http://rghost.ru/7wQz9thJ8
Но там черт ногу сломит, а некоторый код работает по неизвестным мне причинам и получен опытным путем.
В общем, мне нужен перечень всех частоиспользуемых слов при программировании на JS чтобы можно было скопипастить одним файликом, ну или просто ресурс, где это не долго копировать будет. Просто поднатаскиваю слепую печать на "Клавагонках" и хочу себе создать отдельный словарик для того, чтобы практиковать автоматическую печать всяких там 'var', 'prototype', 'let' и т.д. Был бы очень признателен за ссыль на словарик еще и с определениями. С меня... ну короче сейчас на Udemy распродажа новогодняя, будет еще день точно. Это сайт с обучающими курсами. Все буржуйские курсы сейчас стали доступны по 10 баксов. Я себе 3 купил.
Короче аноны выручайте нужен словарь. Хочу и русский и английский еще и с определениями было бы круто.
P.S: Google === pidor // true.
Учить пыху ради визитки?
$(this).prop("class") возвращает класс элемента this
Добавляю атрибут data-name="1"
Делаю $(this).prop("data-name"); возвращает undefined
Где может собака зарыта?
getEmail: function(firmId, type){
\t\tvar objArgs = new Object();
\t\tobjArgs['firmId'] = firmId;
\t\tobjArgs['type'] = type;
\t\tcall('WebTraffic/getEmail', objArgs, '', false);
Как узнать куда он запрос отправляет?
А в нём я чтот вообще нуб и даже не знаю как его гуглить, чтобы что-то было, лол.
Вот допустим, я хочу штук 30 картинок вывести в браузер через цикл.
Я знаю, что надо сделать цикл, который будет листать каждую картинку из папки с картинками и её же выводить на экран. Но я не знаю как это написать и как загуглить.
Я даже не знаю как добавить добавить картинку без html и jquery.
А у меня таких ебанутых вопросов дохера еще.
Так... где гуглить совершенно банальные вещи? ИЛи это надо всё перепроходить от самых азов?
Вот я открываю developer tools в хроме, там есть вкладка sources в которой можно редактировать код прямо в хроме, без регистрации без смс. Однако это ни на что не влияет: код не выполняется. Если нажимаю ctrl+s, он сохраняется во временную копию, которая опять же не выполняется. Если обновить страницу, то там снова будет первоначальный код. Как сделать чтобы можно было редактировать код в хроме и сразу же в нем видеть результаты?
На английском сойдет?
Черт, отлепилось. Как мне сделать появляющееся при наведении на ссылку окно, внутри которого данные из mysql-базы? По окну можно водить мышкой и что-то выбирать, при убирании мышки окно исчезает
Подскажите как заставить работать на яблоке
$(document).on('click', "input#submit2", function ()
При нажатии на кнопку все переменные копируются в адресную строку и обновляется страница.
То есть работает со второго раза, если ничего не трогать.
Удаление параметров из адресной строки откатывает весь процесс к пункту 0.
https://kev.inburke.com/kevin/dont-use-sails-or-waterline/
С чего начать изучение? Если из опыта только паскаль в школе?
Скачал видеоуроки Гавриленко, говорят годно, стоит начинать? Что еще можно прочесть/посмотреть для полного нуба?
ты че балбес?
Обсырай себе фреймворк.
Причем тут тот же NodeJS (штука для написания сервеной части, если что, говорю примитивно для тебя) в целом к примеру? Может еще V8 обосрешь от Google? Его уже в Facebook и YouTube используют.
гугл не помог.
https://jsbin.com/wanayozoge/edit?html,js,output
for(var i = 0; i < 7; i++) {
var tab = document.getElementById("tab" + i);
tab.onclick = function() {test(tab);};
}
function test(tab) {
alert(tab.id);
}
var text = "All that does is tell the console to stop worrying about our use of backslash Bobby characters for wrapping long lines of text.";
var myName = "Bobby";
var hits = [];
for (var i = 0; i < text.length; i++) {
if (text === 'B') {
for(var j = i; (j < myName.length + 1); j++) {
hits.push(text[j]);
}
}
}
if (hits.length === 0) {
console.log("Your name was not found");
}
else {
console.log(hits);
}
В результате получаю: Your name was not found. Но сука блять, этого быть не должно. Хэлп!
if (text === 'B')
судя по этому условию у тебя строка text должна быть эквивалентна символу "В" а это нихуя не так, соответственно, дальнейшие ебациклы ни разу не срабатывают
Благодарю, действительно ебусь в глаза.
Это копия, сохраненная 2 февраля 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.