Size: a a a

JavaScript Noobs — сообщество новичков

2021 January 30

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
Третий фетч сильно задержался )
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
Если нода сама ничего не делает или делает критически мало, то можно этим пренебречь, но зачастую нода как сервер используется как SSR для реакта, а он нифига не быстрый
источник

ЖС

Женя Саенко... in JavaScript Noobs — сообщество новичков
Denys Mikhalenko
Простой пример
const express = require('express')
const app = express()
const port = 3000
app.get('/', (req, res) => {
 // будем считать, что этот цикл - это типа реакт рендерит
 for (let i=0; i<1e6; i++) {
   Math.random()
 }
 res.send('')
})

app.listen(port, () => {
 console.log(`Server started http://localhost:${port}`)
})
Ты для доказательства забыл в неблокирующем стиле это написать
источник

ЖС

Женя Саенко... in JavaScript Noobs — сообщество новичков
А пока ты просто сам заблочил мейнтред
источник

ЖС

Женя Саенко... in JavaScript Noobs — сообщество новичков
Сделай вместо цикла промис который резолвится через 500ms и после возвращай ответ на клиент
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
Женя Саенко
Сделай вместо цикла промис который резолвится через 500ms и после возвращай ответ на клиент
const express = require('express')
const app = express()
const port = 3000

const render = async () => {
 for (let i=0; i<1e6; i++) {
   Math.random()
 }
 return 'some data'
}

app.get('/', async (req, res) => {
 const result = await render()
 res.send(result)
})

app.listen(port, () => {
 console.log(`Server started http://localhost:${port}`)
})
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
на тебе асинхронно :-)
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
все так же как и было
источник

ЖС

Женя Саенко... in JavaScript Noobs — сообщество новичков
Вот это уже больше на правду похоже
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
ну так разницы нет )
источник

EB

Erik Bel. in JavaScript Noobs — сообщество новичков
Denys Mikhalenko
if (str) закинет тебя в else если твоя str - null
а ты в этом else пытаешься сделать str.length, т.е. null.length
a str == null, потому что вызван метод регулярки по отношению к str?
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
Да, это из-за регулярки
источник

EB

Erik Bel. in JavaScript Noobs — сообщество новичков
Denys Mikhalenko
Да, это из-за регулярки
спасибо
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
str.match(/[^a-m]/g) возвращает null если не сматчилось
источник

EB

Erik Bel. in JavaScript Noobs — сообщество новичков
Denys Mikhalenko
str.match(/[^a-m]/g) возвращает null если не сматчилось
ого, то есть, если метод регулярки  не выполнен, то будет null? Так же происходит со всеми методами регулярок?
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
Он выполнен, просто ничего не нашлось
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
Если нашлось - вернется результат, если не нашлось - результат null
источник

DM

Denys Mikhalenko in JavaScript Noobs — сообщество новичков
источник

EB

Erik Bel. in JavaScript Noobs — сообщество новичков
Denys Mikhalenko
Если нашлось - вернется результат, если не нашлось - результат null
я в шоке, как вы запоминаете столько подробностей) ты наверное сеньор)
источник