Дима
Он мне так и не дал нормально добавить дополнительные тесты
Дима
Оба варианта бессмыссленны)
Дима
Короче, четвёрая ревизия показывает, что разница несущественна, но всё же лучше не заставлять движок приводить типы
Anonymous
Вопрос в том, как приводятся типы в == и может ли ~~ быть быстрее?
Дима
~~ быстрее всех приводит строку к числу, в остальных случаях смысла в нём никакого
Дима
Повторюсь, не заставляй V8 заниматься приведением типов за тебя
Дима
Если тебе нужно убедиться что значение не пропущено, то просто сделай !== undefined
Anonymous
Dmitry
Чииво
Dmitry
Это js?
Anonymous
Мне кажется, что побитовое не в языках с динамической типизаций имеет вообще непредсказуемый результат
Дима
(!+[]+[]+![]).length = 9
Дима
Enjoy your js
Anonymous
😍
Anonymous
Норм
Anonymous
Классический js как он есть
Viacheslav
так. напишу еще раз.
есть такой массив:
[
{"order": 1, "task": 1},
{"order": 2, "task": 2},
{"order": 3, "task": 3},
{"order": 1, "task": 4},
{"order": 2, "task": 5},
{"order": 1, "task": 6}
];
мне надо сделать из него строку:
'order1': 3, 'order2': 2, 'order3': 1
решение уже было, но не совсем то. мне нужна именно строка а не массив с значениями(правильными, кстати говоря)
вот предыдущее решение:
arr.reduce((acc, { order }) => { acc[order] = (acc[order] || 0) + 1; result += "'state" + acc[order]; return acc; }, {})
Sergey
Кто там убеждал что в чистом Js промисы синхронны
Sergey
это нихуя не правда
Sergey
Maksim
я и не убеждал
Sergey
я скомпилил v8
Sergey
Viacheslav
с моей задачей никто не поможет?
Anonymous
JSON.stringify([
{"order": 1, "task": 1},
{"order": 2, "task": 2},
{"order": 3, "task": 3},
{"order": 1, "task": 4},
{"order": 2, "task": 5},
{"order": 1, "task": 6}
]).replace(/{/g,'').replace(/}/g,'').slice(1,-1)
Sergey
чего ты хочешь добиться?
Viacheslav
строку хочу, а редус не дает этого сделать
Viacheslav
JSON.stringify([
{"order": 1, "task": 1},
{"order": 2, "task": 2},
{"order": 3, "task": 3},
{"order": 1, "task": 4},
{"order": 2, "task": 5},
{"order": 1, "task": 6}
]).replace(/{/g,'').replace(/}/g,'').slice(1,-1)
очень смешно. решение работает только для данного примера
Kirill
если в v8 нет асинхронности то почему промис асинхронно выполнился
Sergey
так. напишу еще раз.
есть такой массив:
[
{"order": 1, "task": 1},
{"order": 2, "task": 2},
{"order": 3, "task": 3},
{"order": 1, "task": 4},
{"order": 2, "task": 5},
{"order": 1, "task": 6}
];
мне надо сделать из него строку:
'order1': 3, 'order2': 2, 'order3': 1
решение уже было, но не совсем то. мне нужна именно строка а не массив с значениями(правильными, кстати говоря)
вот предыдущее решение:
arr.reduce((acc, { order }) => { acc[order] = (acc[order] || 0) + 1; result += "'state" + acc[order]; return acc; }, {})
arrr.map(r => `'order${r.order}': ${r.tast}`).join(', ')
Dmitry
Viacheslav
Sergey
Maksim
так. напишу еще раз.
есть такой массив:
[
{"order": 1, "task": 1},
{"order": 2, "task": 2},
{"order": 3, "task": 3},
{"order": 1, "task": 4},
{"order": 2, "task": 5},
{"order": 1, "task": 6}
];
мне надо сделать из него строку:
'order1': 3, 'order2': 2, 'order3': 1
решение уже было, но не совсем то. мне нужна именно строка а не массив с значениями(правильными, кстати говоря)
вот предыдущее решение:
arr.reduce((acc, { order }) => { acc[order] = (acc[order] || 0) + 1; result += "'state" + acc[order]; return acc; }, {})
arr.map(({order}, i) => `'order${i + 1}': ${order}`).join(', ')
Viacheslav
'order{здесь номер order'a}': {коли-во элементов}
Sergey
а
Sergey
ща
Sergey
просто ж
Sergey
а на task пофиг?
Viacheslav
да
Viacheslav
просто на шарпце с linq
Sergey
так. напишу еще раз.
есть такой массив:
[
{"order": 1, "task": 1},
{"order": 2, "task": 2},
{"order": 3, "task": 3},
{"order": 1, "task": 4},
{"order": 2, "task": 5},
{"order": 1, "task": 6}
];
мне надо сделать из него строку:
'order1': 3, 'order2': 2, 'order3': 1
решение уже было, но не совсем то. мне нужна именно строка а не массив с значениями(правильными, кстати говоря)
вот предыдущее решение:
arr.reduce((acc, { order }) => { acc[order] = (acc[order] || 0) + 1; result += "'state" + acc[order]; return acc; }, {})
а чем тебя твое решение не устроило?
Viacheslav
ну оно возвращает массив
Viacheslav
с числами
Дима
Viacheslav
ща покажу
Дима
У ноды как бы ядро на event loop
Viacheslav
Veniamin
так. напишу еще раз.
есть такой массив:
[
{"order": 1, "task": 1},
{"order": 2, "task": 2},
{"order": 3, "task": 3},
{"order": 1, "task": 4},
{"order": 2, "task": 5},
{"order": 1, "task": 6}
];
мне надо сделать из него строку:
'order1': 3, 'order2': 2, 'order3': 1
решение уже было, но не совсем то. мне нужна именно строка а не массив с значениями(правильными, кстати говоря)
вот предыдущее решение:
arr.reduce((acc, { order }) => { acc[order] = (acc[order] || 0) + 1; result += "'state" + acc[order]; return acc; }, {})
Я правильно понял задачу? https://jsfiddle.net/93uz8tnd/
Yustina
Всем привет!
13 июля в 19:00 приглашаем Вас посетить Firebase Meetup #2.
На codelab вы научитесь использовать Firebase для создания Android приложений и применять такие сервисы как: Firebase Realtime Database, Firebase Authentication, Firebase Remote Config, Firebase Notifications, Firebase Invites, Firebase AdMob, Firebase Crash Reporting, Firebase TestLab, Google Analytics for Firebase.
Информация и регистрация доступна по ссылке: https://apptractor.timepad.ru/event/516461/
Когда и где?
13 июля, в 19:00
Москва, Коворкинг Yellow Door, Страстной б-р, 12с1
Sergey
Maksim
Sergey
Viacheslav
надо не так чтобы выходило, а вот так:
'order1': 3, 'order2': 2, 'order3': 1
Maksim
Oleg
Складывай со строкой 'order'
Sergey
Kirill
У ноды как бы ядро на event loop
вчера было обсуждение что js изначально синхронен (в спеке нет понятий setTimeout/setInterval) и вся асинхронность реализуется платформой (браузер/нода)
Oleg
Класно так код писать, на чатязыке. Пишешь в чат вопросы, код пишется за тебя. Если не проходит тесты - дополняешь вопрос
Дима
не определено это не значит, что его нет, это значит что спеке по барабану
Дима
Самое интересное, что решение я написал в самом начале, но рамда, да ещё и с import from — это явно ту мач сегодня
Viacheslav
ты не видишь?
а без повторяющихся значений как? ну т.е. order1 должен вывестись 1 раз, при этом с результатом 3
Дима
Сколько телодвижений просто чтобы не юзать рамду
Viacheslav
а в твоем решении order1 выводится 3 раза с результатом 1 в каждом случае
Sergey
сделал
Sergey
Дима
Sergey
так?
Sergey
Sergey
Viacheslav
да
Sergey
Viacheslav
а как то упростить нельзя? громоздко выглядит
Sergey
Viacheslav
хех
Sergey
но ладно