@nodejs_ru

Страница 2199 из 2748
Gats
25.06.2018
09:23:58
подскажите у меня есть модуль, который воспринимает только системные пути. Могу ли я как-то с помощью path задать относительный путь к файлу, чтобы не менять всё время путь для продакшна

Charles
25.06.2018
09:30:20
Так, а сонар не подошел что ли?
ааааааа. ну говорю ж, не в этом вопрос) может он и подойдет, я гляну его, вопрос был что считается стандартом де-факто в этом вопросе) как lodash для фуцнкций, immutable для структур данных, и т.д., только для метрик

?
25.06.2018
10:25:46
Приветствую! Народ, подскажите: есть модуль, активно использующий toFixed(), но на разных платформах/версиях node ведёт себя по-разному. На Android, например, где версия Node 8.9.х, функция способна выдать от 0 до 20ти знаков после запятой, в то время как на Linux (Node 10.x) этот Range уже 0-100. Сталкивался кто-нибудь с подобным? Есть ли способ программно определить диапазон? Или для каждой версии копать документацию?

Google
GTech
25.06.2018
10:33:56
Кто нибудь знает? Или я не правильно вопрос задал?)

Можете подсказать про EventLoop? I/O коллбэки: выполняются почти все коллбэки, за исключением событий close, таймеров и setImmediate(); События close это только .on('close') или это какой то тип, а не имя?

И process.nextTick() вызывается в конце фазы, которой был вызван?

Кирилл
25.06.2018
10:34:05
Пиши toFixed(чисто_знаков)

?
25.06.2018
10:45:29
Пиши toFixed(чисто_знаков)
Сейчас это parseFloat(foo).toFixed(i), где i определяется циклом. Всё работает, но на разных версиях по-разному. Цикл: const maxRange = (process.platform === 'android' ? 20 : 100); for (let i = 0; i <= maxRange; i +=2) { if (parseFloat(sum).toFixed(i) > parseFloat(0).toFixed(i)) { //... } Вот и спрашиваю, это зависит от платформы и/или от версии (платформы/Node)?

?
25.06.2018
10:46:38
toPrecision(n) ещё есть
Не подходит, у него минимальный диапазон 1-21.

Кирилл
25.06.2018
10:46:47
От платформы не должно

?
25.06.2018
10:46:53
От версии
Ясно. Спасибо!

Alex
25.06.2018
10:50:51
И process.nextTick() вызывается в конце фазы, которой был вызван?
Ну вроде бы в документации именно так сказано

GTech
25.06.2018
10:56:06
Ну вроде бы в документации именно так сказано
Просто я не понял в конце фазы или в конце цикла(всех фаз)

Google
GTech
25.06.2018
11:05:44
Фазы
Спасибо)

Alex
25.06.2018
11:06:32
Ребят. Есть проблема. У меня есть кастомная карта на канвасе, у нее свой алгоритм инициализации (отрисовка карты, слоев, обьектов и т.д.). Мне в другом методе нужно показать обьект на карте. Код асинхронный, и что выполнится первым, я хз. Я хочу в сторе сохранить промис, и зарезолвить его в конце анициализирующей функции. И соответственно в другом методе дождаться пока этот промис зарезолвится. Вопрос как, и можно ли так сделать

Sergey
25.06.2018
11:24:27
Просто я не понял в конце фазы или в конце цикла(всех фаз)
у цикла событий нет конца, он бесконечный

GTech
25.06.2018
11:30:28
В устройство V8 полез?
да, т к на собеседовании нечего не смог про него сказать И еще понял что нужно начать юзать TS)

Евгений
25.06.2018
11:31:16
да, т к на собеседовании нечего не смог про него сказать И еще понял что нужно начать юзать TS)
А что спрашивали именно про устройство движка V8? Ну если не секрет, самому интересно.

GTech
25.06.2018
11:31:58
спрашивали как работает nextTick, setImmediatle, в чем разница

es5, замыкания

http tcp

Евгений
25.06.2018
11:32:41
Ну это вроде простые вопросы. За день можно все вкурить.

Alexander
25.06.2018
11:33:00
лол, еще спрашивают замыкания?

Евгений
25.06.2018
11:33:02
Так что ещё нормальнее собеседование тебе попалось.

GTech
25.06.2018
11:34:20
Многие ТС не признают и юзают его аналоги.
нужен хоть какой нибудь контроль переменных т к переопределения деоптимизируют код :)

GTech
25.06.2018
11:35:17
JSDoc — генератор документации в HTML ?

Alexander
25.06.2018
11:35:33
в руках нормальной IDE еще и неплохой анализатор

шторм, например, на ее основе типы чекает

Google
Евгений
25.06.2018
11:36:36
jsdoc?
Ой, щас бы типизацию заменять Комментариями.

Alexander
25.06.2018
11:36:52
А ведь это один из его режимов работы

Евгений
25.06.2018
11:37:09
Во, кстати аналог TS’а.

Alexander
25.06.2018
11:37:18
Ну да

Но он не обязывает, а так, помогает

Sergey
25.06.2018
11:37:48
лол, еще спрашивают замыкания?
я в ivi.ru ходил на собеседование, там спросили как решить проблему settimeout в цикле ПЯТЬЮ способами

GTech
25.06.2018
11:38:12
JSdoc будет чекать тип и через него доки можно делать?

Alexander
25.06.2018
11:38:20
И это не учитывая let

Тогда его не было

Ну не прям чекать

Он просто тебе подскажет, что тип несовместим

И опять же, нужна поддержка со стороны иде

Из консоли он чекает или нет - я не помню

GTech
25.06.2018
11:40:16
Из консоли он чекает или нет - я не помню
спасибо, вечером посмотрю на него)

Sergey
25.06.2018
11:40:33
let и const это как одна идет

Google
Alexander
25.06.2018
11:40:39
декларативная функиция, выражение, IIFE, let, const?)
А ещё setTimeout принимает аргументы начиная с третьего

А ещё bind

А стрелка для этого не годится? Я не помню

GTech
25.06.2018
11:43:20
А стрелка для этого не годится? Я не помню
анонимная функция вроде как обычная, только без имени и короче, но могу ошибаться) и контекста там нет

Alexander
25.06.2018
11:43:38
Стрелка ещё контекст не создаёт

Ну да

Но вдруг ее оптимизировали для этого, я хз

GTech
25.06.2018
11:43:55
угу :)

Alexander
25.06.2018
11:44:10
Последний раз меня спрашивали про это в 2015, там ещё стрелки широко не использовались

не, не работает

Joseph
25.06.2018
11:51:20
Всем доброго времени суток , как можно сделать find после populate в mongoose , там есть match в качестве пораметров , но он просто фильтрует поле , но все равно отдает объект , который не подходит по условию

// .populate({ // path: 'document', // select: 'uid', // match: { // uid: '25$15' // } // })

Joseph
25.06.2018
11:59:11
но ты можешь уже с помощью js отсеять
Это понятно , просто я думал можно вызвать find по уже отсартированному

Yurii
25.06.2018
12:00:41
Это понятно , просто я думал можно вызвать find по уже отсартированному
нет, но match при populate должен отработать правильно. Возможно у тебя само условие неверно.

Joseph
25.06.2018
12:01:06
Yurii
25.06.2018
12:01:29
match да он работает , но делает немного не то что я хочу)
ну может тогда надо уточнить что у тебя не работает?)

Joseph
25.06.2018
12:02:04
)) можно даже в картинка

Один момент ))

Google
Joseph
25.06.2018
12:03:35
Вот у меня есть списочек



Передал внуторь UID и он мне вернкул



А я хотел , что бы он отдал только один объект у которого он найдет это UID

Я конечно понимаю , что я могу на Js это сделать , но хотел это сделать с помощью mongoose

Dimanius851
25.06.2018
12:09:51


Yurii
25.06.2018
12:11:22
А я хотел , что бы он отдал только один объект у которого он найдет это UID
так, у тебя эти uid, как свойство обьекта в массиве и тебе не фильтрует эти объекты при populate?)

Dimanius851
25.06.2018
12:11:45
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import

Yurii
25.06.2018
12:12:14
с нюансами https://nodejs.org/dist/latest-v8.x/docs/api/esm.html

Dimanius851
25.06.2018
12:12:48
жесть

Joseph
25.06.2018
12:13:23
так, у тебя эти uid, как свойство обьекта в массиве и тебе не фильтрует эти объекты при populate?)
UID находится в другой модели , которая в свою очередь раскрывает populate

Yurii
25.06.2018
12:18:00
UID находится в другой модели , которая в свою очередь раскрывает populate
так, давай уточним как работает populate. У тебя есть главный запрос (find, findOne, …) он отрабатывает и возвращает результат в память, потом если есть populate, то по модель монгус смотрит с какой другой коллекцией надо связать твое поле по _id в внешней коллекции, то есть он собрал все ObjectId, которые надо связать и делает второй запрос типа collection.find({_id: {$in: ObjectIds}} и результат второго запроса соединяет с первым. А твой match, расширяет вот этот второй запрос.

UID находится в другой модели , которая в свою очередь раскрывает populate
по этому если ты делаешь match, то он отфильтует результаты всех populate и вернет документы, которые подходят под условие

Дмитрий
25.06.2018
12:29:02
А у nodemon есть какой нибудь флаг, чтоб он сам рестаровал если приложение упало?

GTech
25.06.2018
12:56:19
Так что ещё нормальнее собеседование тебе попалось.
На самом деле не нормальное т к тим лид сам не правильно говорил пару вещей Например он спросил почему delete не сработало var a = {bb:4}; var b = a; delete b; console.log(b): т к del удаляет значение у глобального обьекта, а он сказал что "сохранилась ссылка на обьект, а сам обьект удален" так же он мне сказал нельзя юзать try{}catch(){} т к замедляет node, хотя в 14 году убрали 2 компилятора из V8 и это пофиксили

pasvanok
25.06.2018
12:57:23
помогите

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