Dmytro
или как советуете?
O.
Arthur
Всем привет. Вопрос по mongoose aggregate. Есть две таблицы. Юзеры. Заявки. В таблице юзеры есть id,username. В таблице заявки есть tt_id, user_id. Как сделать выборку всех заявок, с именами юзеров. Причём бывает такое что у заявки user_id пустой ?
Таймураз
Roman
Таймураз
Sergey
воу воу
Sergey
в 8.5 заимплементили модули
Sergey
module
Add support for ESM. This is currently behind the --experimental-modules flag and requires the .mjs extension. node --experimental-modules index.mjs #14369
сomorsiс
3
Sergey
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V8.md#2017-09-12-version-850-current-mylesborins
Sergey
лишь бы стандартную библиотеку запилили нормально
сomorsiс
Всмысле третий раз пишут сюда
Sergey
сейчас не работает import { join } from 'path'
Sergey
O.
Arthur
O.
Естественно.
Arthur
O.
В зависимости от задачи естественно.
Arthur
O.
Изначально необходимо открыть документацию по MongoDB Aggregate (именно ее; не mongoose).
O.
Т.к. mongoose не связан никоим образом с агрегацией в принципе.
O.
O.
$project сформируешь ответ.
O.
Могут быть промежуточные $project.
Kons
Не планируется ли какого-нибудь синтаксиса для Symbol(), чтобы каждый раз не писать const SYMBOL_NAME = Symbol('symbol_name'), а, например, @symbol_name?
Vladimir
Нет
Gleb
Kons
Max
Всем привет)
Max
Max
у кого-нибудь бывало такое?
Max
Пытаюсь сделать через флаг --inspect Memory Snapshot
Max
последняя нода
Kons
Max
Max
на
Kons
А как ты себе это представляешь?)
Если речь про использование, то как-то так:
const myObj = {};
myObj[@sym] = 'some value';
или
const myObj = {};
myObj[:sym] = 'some value';
вместо
const SYM = Symbol();
const myObj = {};
myObj[SYM] = 'some value';
Evgeny
А какой юзкейс?
Gleb
Vladimir
И чем символ тогда от строк будет отличаться?
Kons
тогда - это когда?
Vladimir
Тогда, это в твоем примере
Kons
const SYM = Symbol();
const myObj = {};
myObj[SYM] = 'some value';
Вот здесь символ от строки чем отличается?
Vladimir
Тем что он уникален и его нельзя воссоздать никаким образом
Kons
Ааа, вот вы о чем…
Gleb
Symbol('description') возвращает тебе образно говоря UUID. Так как его никто не знает, ты можешь положить его в переменную и использовать в obj[symbol].
Kons
const a = 'stroka';
const b = 'stroka';
a === b; // true
Т.к. символ - это тоже примитив, заменяем в примере 'stroka' на :sym (или @sym) и получаем то же самое.
Gleb
Но если смотреть в контексте классов, то тебя спасут Private properties.
Kons
Vladimir
Kons
Мужчины, я знаю, как работают символы. Я спросил, не планируется ли альтернативный синтаксис :)
Gleb
Vladimir
Твой синтаксис убивает смысл символов
Kons
Странно, мне бы удобней было
Evgeny
Господа, а никто на память не вспомнит коротенкую маленькую либу которая умеет обрабатывать массивы хендлером так, что каждый следующий элемент выполняется в nextTick ?
Gleb
Kons
Да и в рубях не убивает, а тут убивает…
Vladimir
Какое отношение символы в руби имеют к js? Правильно, никакого
arts
Тот случай, когда гуглить дольше, чем самому написать :-)
Evgeny
Kons
Т.е. никакой возможности избежать вот таких записей нет?
const PROP_1 = Symbol();
const PROP_2 = Symbol();
const PROP_3 = Symbol();
class Klass {
constructor(arg1, arg2, arg3) {
this[PROP_1] = arg1;
this[PROP_2] = arg2;
this[PROP_3] = arg3;
}
method() {
if (this[PROP_1]) {
this[PROP_2] = this[PROP_3]
}
}
...
}
Evgeny
А ты неминуемо к этому придёшь, даже с твоим предложением
Evgeny
потому что в контрукторе и в методе это будут разные символы
Evgeny
Либо протеряется вся идея симовлов
Kons
Да, понял. Спасибо.
Gleb
Короче, чувак, тебе нужны Private properties из tc-39 proposal. Жди, скоро впилят в Babel.
Kons
Просто остальные решили проверить знания сразу мои сразу, поучить. Это так смешно выглядит. Вспоминается картинка «Беседа JavaScript-господ».
Gleb
Kons
Ну если ты хорошо понимаешь, как работает Symbol, то я слабо понимаю, как возник сей вопрос.
Возможно, что-то упустил из вида. Забей. Мне @NordLuf в личке задал правильные вопросы, которые вернули меня на «путь истинный». Я прямо сейчас пишу код, в котором использую символы. От убогого нагромождения АППЕР_КЕЙСОВ я замечтался о каком-то более удобном синтаксисе и выдал в чат поток сознания. Хорошо, что у вас так не бывает. Правда, рад за вас. Извините, если расстроил кого-то, кто считал меня более лучшим JS-программистом.
Таймураз
Gleb
Сорян, что наехал)
Max
Arthur
неа
Возможно что проблема в хроме. Если через него подключаешься. Попробуй chrome canary
Max
через хром