@nodejs_ru

Страница 316 из 2748
Pavel
04.11.2016
10:34:27
ну, объективно большая часть студентов читает книжки годами, а потом никуда не может устроиться, а некоторые устраиваются и за год поднимают практический багаж в разы больше

Oleksandr
04.11.2016
10:34:45
а вот с мейнстримом наоборот, ждут что и язык от зубов отскакивает, и либы знаешь, и тулинг, и тд и тп

Google
Oleksandr
04.11.2016
10:35:31
в смысле, избегание практики (в том же опенсорсе или даже более качественных курсовых) через чтение книг

Александр
04.11.2016
10:41:34
#whois всем привет по традиции ▫️nodejs + sqlite + mongo (статистика), пишем на es7 через бабел. ▫️пришел на ноду из Python, немного пишу(-сал) биндингов для ноды, линукс, бабел, промисы и проч., в общем немногое по немногу, кроме фронтенда ▫️сложно сказать, чем смогу, тем помогу. ▫️узнать чем другие занимаются, новости, лулзы ▫️Екатеринбург ▫️tproger

LEO
04.11.2016
11:13:23
Доброго всем дня! Меня зовут Фаррух я студент пишу бота для своей студенческой группы, часто бывают вопросы по написанию этого самого бота, группа интересна мне наличием опытных в этом участниках, я из Ташкента про группу узнал с сайта https://tgram.ru/channels/nodejs_ru #whois

если можно то сразу переду к вопросу.. я хочу научить своего бота считать среднее арифметическое из заданных чисел, проблема в том что я не могу понять как нужно присвоить каждому числу аргумент, числа будут присылатся так- каждое число с новой страки в одном сообщении, то есть для меня оно выглядит так: text: '1\n2\n3\n4\n5\n6\n7\n8\n9\n11\n12\n13' }

помогите пожалуйста сделать из этого массив

Yusup
04.11.2016
11:19:59
text.split('\n')

Vitaliy
04.11.2016
11:20:25
text.split('\n').map(n => parseInt(n))

Yusup
04.11.2016
11:20:46
@Vi

@glukki дело говорит

Vitaliy
04.11.2016
11:22:13
ну, проверить потом надо, вдруг строка не была числом — тогда будет NaN

LEO
04.11.2016
11:22:40
понял

спасибо

Vitaliy
04.11.2016
11:22:57
можно ругнуться на это, а можно проигнорировать

Google
Yusup
04.11.2016
11:23:11
почитай про работу со строками и методы массивов

Vitaliy
04.11.2016
11:25:28
дада, лучше прям документацию почитать https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/split справа наверху есть переключала языков, если что

кстати, а в вебе есть документация по JS лучше/удобней, чем MDN? О.о

я-то использую приложение Dash уже давно, в нем по js дока как раз из MDN собрана

JetFightzer ?
04.11.2016
11:47:45
кто тут прошарен во всяких MVC, MVP и всех таких штуках? я тут более-менее наметил некую схему работы всех этих штук и хотелось бы посоветоваться с кем-то толковым, кто не просто "делай по MVC потмоу чт отак надо"

LEXASOFT
04.11.2016
11:55:17
fetch('/auth').then(token => fetch('/supb', {}, { auth: token }))
чето гдето ошибся в итоге возвращает мне промис http://pastebin.com/4CSNHc8x

Andrey
04.11.2016
11:56:08
промисы всегда возвращают промисы

LEXASOFT
04.11.2016
11:56:29
хм а как мне дождаться результата?

Andrey
04.11.2016
11:56:55
результат, это типо info?

LEXASOFT
04.11.2016
11:57:02
да

Vladimir
04.11.2016
11:57:05
}).then(function(json) { //console.log(json); return json.access_token; }).then(function(token) { return fetch('https://www.googleapis.com/oauth2/v1/userinfo?alt=json&access_token='+token); .then(function(res){ return res.json(); }).then(function(info) { console.log(info); return info; }).catch(function(err) { console.error('Error in promise chain', err); });

Andrey
04.11.2016
11:57:23
+

JetFightzer ?
04.11.2016
11:57:44
> return info; ретурн куда?

Vladimir
04.11.2016
11:57:46
не нужно нестить промисы

Andrey
04.11.2016
11:57:53
А лучше копни в await/async чтобы не городить эту вложенность

Vladimir
04.11.2016
11:57:54
это промис зарезолвит

module.exports = function supPromise(code) {}

var supPromise = require('./sup-promise') supPromise('yeah').then(console.log, console.error)

А лучше копни в await/async чтобы не городить эту вложенность
от понимания промисов лучше не уходить

Google
Andrey
04.11.2016
12:00:30
*пожималкин с iOs*

LEXASOFT
04.11.2016
12:32:23
+

Александр
04.11.2016
13:36:03
https://nodejs.org/dist/latest-v6.x/docs/api/ же, ну

KlonD90
04.11.2016
13:37:10
вот видео курсы стикеров в телеграмме это полезный курс ._. курсы по ноде мне кажется какой-то тратой времени

Dreamerinnoise
04.11.2016
13:37:25
но она слишком базовая

KlonD90
04.11.2016
13:39:21
и зачем она? я вообще не уверен что про ноду нужна какая-то отдельная книжка

разве что пару статей про стримы, баферы

Vitaliy
04.11.2016
13:40:03
нужна книжка про замыкания. и про промисы. других не надо

листаж: 1 стр.

ладно, про промисы 2

Vitaliy
04.11.2016
13:41:04
только потому что интерлиньяж большой )

Dreamerinnoise
04.11.2016
13:41:49
разве что пару статей про стримы, баферы
http://book.mixu.net/node/ch9.html 1 страница

KlonD90
04.11.2016
13:41:50
промисы и замыкания это не нода

Vitaliy
04.11.2016
13:42:47
промисы и замыкания это не нода
для всего остального есть документация ?

Vitaliy
04.11.2016
13:45:24
нет, ну а что такое нода? что там учить? нода, если буквально, это апи + ивент луп. все остальное принесено извне: язык со стандартной библиотекой, модули, паттерны проектирования..

KlonD90
04.11.2016
13:45:24
ну не таких книжек так и скажите

Google
KlonD90
04.11.2016
13:45:32
а то как-то одну и ту же штуку 3 раза шутить

Admin
ERROR: S client not available

Gabe
04.11.2016
14:54:59
/stat@combot

LEO
04.11.2016
15:01:43
text.split('\n').map(n => parseInt(n))
если вам не сложно можете на приметивном премере показать?

Vitaliy
04.11.2016
15:03:48
let a = '1\n2\n3' .split('\n') // ['1', '2', '3'] массив строк .map(s => parseInt(s)); // [1, 2, 3] массив чисел console.log(a); я просто даже не знаю что тут еще показывать

JetFightzer ?
04.11.2016
15:05:05
» .map(s => parseInt(s)); главное не .map(parseInt)

а то будет плохо

LEO
04.11.2016
15:05:32
хорошо, спасибо

Vitaliy
04.11.2016
15:06:24
в смысле, это буквально код, который можно скопировать к себе, и он сделает из строки массив чисел

LEO
04.11.2016
15:48:43
спасибо получилось

только 1 вопрос

он у меня считает только целые числа

как заставить его понимать запятую?

var mid = 0; array.shift(); array = array.map(s => parseInt(s)); array = array.filter(function(s){return s;}); for(i in array) { if(array[i]) { mid += array[i]; console.log(array[i]); } } sendMessageText = 'Среднее ' + (mid / array.length);

Teorge
04.11.2016
16:08:18
Зачем тебе запятая в вычислениях? Вставь ее в вывод

Alexey
04.11.2016
16:08:57
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/parseFloat

P
04.11.2016
16:10:50
как заставить его понимать запятую?
У тебя в числах, которые ты парсишь, есть запятые? Посмотри на mdn статью про parseFloat, там есть пример строгого разбора числа с регуляркой, возьми эту регулярку и добавь туда запятую (только потом надо будет её заменить). Это первое что в голову пришло.

Teorge
04.11.2016
16:15:23
Прошу прощения, ошибся, думал ты хочешь через запятую их записать

Поддерживаю parseFloat

Google
LEO
04.11.2016
16:19:51
var filterFloat = function (value) { if(/^(\-|\+)?([0-9]+(\.[0-9]+)?|Infinity)$/ .test(value)) return Number(value); return NaN; }

вы об этом?

array = array.filter(function(s) {return s;});.

проблема разве не в этой строчке?

фильтр отрезает запятую и то что за ней?

Александр
04.11.2016
16:36:13
нет, не в этой строчке https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/parseInt

Vitaliy
04.11.2016
16:51:11
array = array.filter(function(s) {return s;});.
к слову, эта строчка в твоем примере кода выше — сделает так, что в массиве не останется значений равных числу ноль

LEO
04.11.2016
16:53:11
Учту, спасибо

Дмитрий
04.11.2016
16:53:36
let str = '1\n2\n3.5\n4\n5\n6,5\n7\n8\n9\n10'; let arr = str.split('\n'); let count = 0; let res = arr.reduce((total, current) => { if (current.includes(',')) { current = current.replace(',', '.'); } if (current.includes('.')) { current = parseFloat(current) || 0; } else { current = parseInt(current) || 0; } if (current > 0) { count++; } return total += current; }, 0); let med = res / count;

Vitaliy
04.11.2016
16:55:44
кстати, пусть создается лишний мусор в памяти, но я бы предпочел разделить парсинг, фильтрацию и сложение..

Страница 316 из 2748