
KlonD90
17.11.2016
09:14:02
Каждая функция отдельный скоп

Vitaliy
17.11.2016
09:14:25

KlonD90
17.11.2016
09:14:39
А он умеет
Кажется нет

Google

Alex
17.11.2016
09:15:02

Vitaliy
17.11.2016
09:15:48
https://ariya.io/2013/04/automatic-inlining-in-javascript-engines

KlonD90
17.11.2016
09:16:48
Инлайнинг с замыканиям и не сильно работает

Ҫѐҏӗѫӑ
17.11.2016
09:35:20
как можно рекомендовать писать на R, если на нем в принципе невозможно аппу написать?

?
17.11.2016
09:44:41

jdc
17.11.2016
09:45:19
Написал модуль, который фетчем урлу тянет (json) и написал импорт на переменную.
До модульности (когда код был в основном файле), уровень вложенности в jsonе был на 1 меньше, а после модуля появилось {"назва переменной": {вывод файла json}}
как изменить уровень вложенности jsonа, что бы он стал таким как до модульности?
https://github.com/dns2316/skb3

Vladimir
17.11.2016
09:46:44

jdc
17.11.2016
09:47:06
Так рабочего ответа вчера не поступило

Vladimir
17.11.2016
09:47:09
ты ссылку на целый репо дал
какие файлы
так ты и не ответил

jdc
17.11.2016
09:47:45

Google

Vladimir
17.11.2016
09:49:14
вот этот код точно не ломает ничего? https://github.com/dns2316/skb3/blob/master/src/pc.js#L11-L13

jdc
17.11.2016
09:51:41
Ну он же .then то есть он выполняется после предыдущего then (офф. доки)

Vladimir
17.11.2016
09:51:52
смотри
я починил
ага
но только он должен возвращать что-нибудь
let pc = {};
const pcUrl = 'https://gist.githubusercontent.com/isuvorov/ce6b8d87983611482aac89f6d7bc0037/raw/pc.json';
export default () => fetch(pcUrl).then(res => res.json());
ошибки промисов надо ловить при их использовании, а не при объявлении

jdc
17.11.2016
09:53:16
Пробовал так уже)

Vladimir
17.11.2016
09:54:15
// res.json(pc().then(pc => console.log(pc)));
pc().then(_ => res.json(_));

Славик
17.11.2016
09:54:51
.then(pc => console.log(pc)))
вот это можно записать короче:
.then(console.log)

jdc
17.11.2016
09:55:13
Спасибо, сейчас попробую)

Vladimir
17.11.2016
09:55:18
и в хроме мб
https://github.com/dns2316/skb3/blob/master/src/index.js#L29-L31

Славик
17.11.2016
09:55:36
ну если у человека стрелочная функция работает, то и это будет

Vladimir
17.11.2016
09:55:37
что ты на этих строках делаешь?
pc ведь функция

jdc
17.11.2016
09:56:07

Google

jdc
17.11.2016
09:56:26
Там в комментариях я написал, что звездочкой можно сделать
Он перебирает параметры из адресной строки браузера

Vladimir
17.11.2016
09:56:43
я понял, что pc.js работает нормально как минимум в моём варианте
я не про раутинг твой
я про pc[foo][bar]
где pc это функция

jdc
17.11.2016
09:57:49
Он берет в json pc индексы
Объявлен импорт в начале страницы

Vladimir
17.11.2016
09:58:34
импорт в начале да
но это всё равно функция
а не результат её работы

jdc
17.11.2016
09:58:46
Я пробовал его функцией сделать

Pavel
17.11.2016
10:01:56

Vitaliy
17.11.2016
10:03:04
чееее?
вот, например. sum += i * i vs sum = i * i + sum — казалось бы.
«It is completely unobvious unless of course you know by heart how register allocator makes its decisions»
http://mrale.ph/blog/2013/04/29/performance-tuning-as-weather-forecast.html

Vladimir
17.11.2016
10:04:33
Я пробовал его функцией сделать
вот сделай так
const url = 'https://gist.githubusercontent.com/isuvorov/ce6b8d87983611482aac89f6d7bc0037/raw/pc.json';
let cachedResult;
const addToCache = _ => { cachedResult = _; return _; }
export default () => cachedResult
? Promise.resolve(cachedResult)
: fetch(url).then(res => res.json()).then(addToCache);

Pavel
17.11.2016
10:04:39
pc[req.params.var1]
Это просто ссылка на метод с именем req.params.var1 у функции pc. Вот только у неё вроде бы как нет такого метода и тут undefined

Vladimir
17.11.2016
10:04:51
ага
pc().then(res => res[whatever])

Ilya
17.11.2016
10:06:30
этот бенч не отражает всей картины

Vladimir
17.11.2016
10:07:38
вангую, что h2o плохо готовят

Google

Stas
17.11.2016
10:09:03

Ilya
17.11.2016
10:10:11
Какой картины?
скорости работы веб-серверов в дальнейшем, при написании говнокода

Vitaliy
17.11.2016
10:10:37

Pavel
17.11.2016
10:10:39
ох уж эти пузомерки бессмысленные

?
17.11.2016
10:15:51
если проблема была в том, что ничего не выводилось на страницу
и убрать
.then(function (res) {
console.log('Was parsed json!');
})
.catch (err => {
console.log('Error: ', err);
});
как говорили выше

Admin
ERROR: S client not available

jdc
17.11.2016
10:18:25
Всем спасибо! =)

Сергей
17.11.2016
10:20:30

Ҫѐҏӗѫӑ
17.11.2016
10:23:29

Vladimir
17.11.2016
10:23:40

Ҫѐҏӗѫӑ
17.11.2016
10:26:35
и Егоров не случайно сказал про си кагбе

Anton
17.11.2016
10:26:37

Ҫѐҏӗѫӑ
17.11.2016
10:27:09
так-то понятно как компьютер работает

jdc
17.11.2016
10:30:55
разобрался?
подскажешь еще с volumes? ?
там не начинается цикл
if (pc.hdd)

Vladimir
17.11.2016
10:31:43
сохрания результата pc() в переменную
и ипользуюй её

jdc
17.11.2016
10:32:14
уже попробовал

Google

Сергей
17.11.2016
10:34:06
Lazy load тебе нужен
Хочешь сделаю в твой реп ПР через 15 минут?

Vitaliy
17.11.2016
10:35:40
и Егоров не случайно сказал про си кагбе
что-то подумал, и да, согласен. действительно си. надо бы на досуге усилить понимание этой магии js -> magic -> машинные коды :)
мм, не заметил.. про си — это в статье было?

Vladimir
17.11.2016
10:35:53
pc = pc()
не надо так
pcJson назови хотя бы

jdc
17.11.2016
10:36:38
Ленивая загрузка?! ?
пр на гит конечно хорошо, но я сейчас учу node. Там нужно не сложно выполнять дз. Должно быть понятно)
И нужно самому все написать, что бы понимать)

Сергей
17.11.2016
10:37:12
Ну тебе надо в функции проверить пуста ли переменная в модуле

jdc
17.11.2016
10:37:24
pc = pc()
(node:13064) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: pc is not a function

Сергей
17.11.2016
10:37:47
Если пуста выполнить запрос и сохранить в переменную
Всегда возращать промис
Если не пуста

jdc
17.11.2016
10:38:11
без асунка тоже говорит, что пс это не функция

Сергей
17.11.2016
10:38:17
return Promise.resolve(cachePc)

jdc
17.11.2016
10:38:43

Vladimir
17.11.2016
10:39:22

Сергей
17.11.2016
10:43:16
Вот
Почти также, только без функции addToCache