Size: a a a

Node.js — русскоговорящее сообщество

2019 November 20

IL

Igor Lobanov in Node.js — русскоговорящее сообщество
Сколько объектов в реальности?
источник

IL

Igor Lobanov in Node.js — русскоговорящее сообщество
Если 1000 то пофиг, делай, чтобы работало :)
источник

A

Aslam in Node.js — русскоговорящее сообщество
Igor Lobanov
Сколько объектов в реальности?
800
источник

GS

Grigorii K. Shartsev in Node.js — русскоговорящее сообщество
Aslam
Извините, если я детский вопрос задаю, но щас башка реально не варит. Да и дедлайн завтра.

У меня есть 2 массива следуюшего вида


let users = [
   {
       name: 'aaa',
       id: 1
   },
   {//подобен предыдущему}
   //здесь 1000 объектов
];

let changed = [//пустой массив];


Мне нужно по id человека добавить его объект во второй массив. У меня есть для этого два способа


//Первый способ
for (let user of users) {
   if (user.id === 1) {
       changed.push(user)
   }
}

//Второй способ
let u = users.filter(user => user.id === 1);
changed.push(u[0]);


Какой из этих способов быстрее? И знаете ли вы более лаконичный способ?
Это микрооптимизации.
Выбирай тот вариант, что тебе понятнее (принят в команде).
Второй явно короче, менее императивный и менее вероятно, что будут побочки)
Только не понятно, зачем changed.push(u[0]);
источник

EB

Eugene Butusov in Node.js — русскоговорящее сообщество
Aslam
Извините, если я детский вопрос задаю, но щас башка реально не варит. Да и дедлайн завтра.

У меня есть 2 массива следуюшего вида


let users = [
   {
       name: 'aaa',
       id: 1
   },
   {//подобен предыдущему}
   //здесь 1000 объектов
];

let changed = [//пустой массив];


Мне нужно по id человека добавить его объект во второй массив. У меня есть для этого два способа


//Первый способ
for (let user of users) {
   if (user.id === 1) {
       changed.push(user)
   }
}

//Второй способ
let u = users.filter(user => user.id === 1);
changed.push(u[0]);


Какой из этих способов быстрее? И знаете ли вы более лаконичный способ?
единственное во втором случае лучше юзать не фильтр, а find. и не нужно будет u[0]
источник

IL

Igor Lobanov in Node.js — русскоговорящее сообщество
Aslam
Извините, если я детский вопрос задаю, но щас башка реально не варит. Да и дедлайн завтра.

У меня есть 2 массива следуюшего вида


let users = [
   {
       name: 'aaa',
       id: 1
   },
   {//подобен предыдущему}
   //здесь 1000 объектов
];

let changed = [//пустой массив];


Мне нужно по id человека добавить его объект во второй массив. У меня есть для этого два способа


//Первый способ
for (let user of users) {
   if (user.id === 1) {
       changed.push(user)
   }
}

//Второй способ
let u = users.filter(user => user.id === 1);
changed.push(u[0]);


Какой из этих способов быстрее? И знаете ли вы более лаконичный способ?
Только не filter, а find
источник

A

Aslam in Node.js — русскоговорящее сообщество
Grigorii K. Shartsev
Это микрооптимизации.
Выбирай тот вариант, что тебе понятнее (принят в команде).
Второй явно короче, менее императивный и менее вероятно, что будут побочки)
Только не понятно, зачем changed.push(u[0]);
filter возвращает массив с одним элементом
источник

IL

Igor Lobanov in Node.js — русскоговорящее сообщество
Eugene Butusov
единственное во втором случае лучше юзать не фильтр, а find. и не нужно будет u[0]
Кек
источник

A

Aslam in Node.js — русскоговорящее сообщество
Да, про find забыл
источник

IL

Igor Lobanov in Node.js — русскоговорящее сообщество
Пофиг, файнд и пуш
источник

GS

Grigorii K. Shartsev in Node.js — русскоговорящее сообщество
Aslam
filter возвращает массив с одним элементом
А у тебя один юзер с ID = 1? Ну тогда очевидно первый вариант проигрывает как минимум из-за отсутствия break;
источник
2019 November 21

A

Aslam in Node.js — русскоговорящее сообщество
Grigorii K. Shartsev
А у тебя один юзер с ID = 1? Ну тогда очевидно первый вариант проигрывает как минимум из-за отсутствия break;
Спасибо! Такие замечания очень помогают
источник

Б

Богдан in Node.js — русскоговорящее сообщество
Господа, а как по феншую шарить константы между модулями? Вот к примеру нужно шарить такую константу
источник

Б

Богдан in Node.js — русскоговорящее сообщество
const PATH_TMP = path.join(__dirname, '..', process.env.PATH_TMP || 'tmp');
источник

Б

Богдан in Node.js — русскоговорящее сообщество
правильно создать файлик и потом его реквайрить в нужные модуля?
источник

VL

Vova Levchenko in Node.js — русскоговорящее сообщество
Богдан
const PATH_TMP = path.join(__dirname, '..', process.env.PATH_TMP || 'tmp');
Я обычно такое в переменных окружения храню
источник

Б

Богдан in Node.js — русскоговорящее сообщество
Vova Levchenko
Я обычно такое в переменных окружения храню
хм, а как в переменную окружения впихнуть __dirname
источник

D

Dmitry in Node.js — русскоговорящее сообщество
Богдан
правильно создать файлик и потом его реквайрить в нужные модуля?
я так делаю
источник

Б

Богдан in Node.js — русскоговорящее сообщество
Dmitry
я так делаю
на стекоферфлоу чувак тоже так советует
источник

Б

Богдан in Node.js — русскоговорящее сообщество
источник