
Anton
10.01.2017
09:46:36
Вопрос по replace. Мне нужно понять является ли объект объектом или массивом. Делаю Object.prototype.toString.call(photos[i]), на выходе получаю
[object Array] или [object Object]
Вопрос: как через 1 replace оставить только Array или Object? Пробовал
Object.prototype.toString.call( photos[i] )
.replace(/\[object |\]/, ""), но на выходе тогда получаю
Array] или Object] (с пробелом в начале). Как лучше избавиться от квадратных скобок, пробелов и object в начале в таком случае?

Dreamerinnoise
10.01.2017
09:47:55

Anton
10.01.2017
09:48:34
Спасибо

Andrey
10.01.2017
09:52:01

Google

Anton
10.01.2017
09:53:23
Как вариант решения задачи да, но из спортивного интереса хотелось понять как множественная замена replace делается в подобных случаях, когда у тебя пробелы и спецсимволы

Таймураз
10.01.2017
09:54:49

Andrey
10.01.2017
09:57:09
function -
Функция, вызываемая для создания новой подстроки (помещаемой вместо подстроки из первого параметра). Аргументы, передаваемые функции, описаны ниже в разделе
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/String/replace
регулярка ищет матчи, а ф-ция их обрабатывает )
но, в твоем случае все матчи, должны быть заменены на
''

Dreamerinnoise
10.01.2017
09:59:10
Спасибо
только на окружение смотри, этот метод не везде есть

Anton
10.01.2017
10:00:59
А вот ещё вопрос. С сервера мне PHP отдаёт object
{ 2016: { blabla: bla }, 2015: { bla: blabla } }
А браузеры перестраивают это и в веб-инспекторе в ответе с сервера выдаётся object
{ 2015: { bla: blabla }, 2016: { blabla: bla } }
То есть браузер делает автоматически сортировку объекта, хотя кто его вообще просил это делать? Эта проблема как-то решаема?

Константин
10.01.2017
10:01:40
в объектах свойства не сортируемые

Anton
10.01.2017
10:01:54
но порядок нарушается

Nikolay
10.01.2017
10:02:10
год по возрастанию поставило

Andrey
10.01.2017
10:02:16

Google

Константин
10.01.2017
10:02:27
чтобы был порядок, структура должна быть сортируемая
как бы тупо это не звучало

Aldar
10.01.2017
10:03:17

Roman
10.01.2017
10:03:58

Anton
10.01.2017
10:04:09
"это только девтулз тебе сортирует"
хз, вывел в консоли ответ — тоже отсортированно
ангуляр тоже выводит отсортированно
ладно, буду пересобирать у себя

Andrey
10.01.2017
10:05:05

Anton
10.01.2017
10:05:40
тогда буду писать багрепорт в chrome и ff, в остальных браузерах не смотрел ещё

Andrey
10.01.2017
10:06:35
т.е. чтобы быть уверенным на 100% что у тебя там все в том порядке, как ты хочешь - меняй струтуру хранения или алгоритм обработки

Vladimir
10.01.2017
10:09:11
@ZeroBias рассказывал что спеку обновили

Andrey
10.01.2017
10:10:06

Vladimir
10.01.2017
10:25:50
Вот тут подробно написано на эту тему
http://learn.javascript.ru/object-for-in#в-каком-порядке-перебираются-свойства

Oleg
10.01.2017
10:27:47
Вообще тема с объектами и числовыми ключами известная
Оное может порядок менять как захочется
Но это и нормально
Ведь по спеке ключи то в объектах вообще не гарантируют порядок никак
Хочется порядка - нужно юзать массивы

Константин
10.01.2017
10:34:36
либо перед рендером сортируешь ключи и по сортированным ключам доступ через ключ

Konstantin
10.01.2017
10:39:29
ключи вообще не сортированы никак

Google

Konstantin
10.01.2017
10:40:01
в разных браузерах может по-разному сортироваться

Alexandr
10.01.2017
11:05:41
в хроме сортирует числовые ключи, в лисе же нет

Dima
10.01.2017
11:08:39
А оно всё-равно кидает в очередь
setTimeout 0 - помещает футкцию в task queue, a из task queue функция попадает в стек только когда он пуст. (или не только когда он пуст?) дак каким же образом проиходит предотварщение подвисания в дед лупе?
Да и вообще я как-то не ухватываею "от чего длолжно виснуть?"
ну выполняется функция, а если в task queue ничего не поступает то от чего должно быть подвисание?

Константин
10.01.2017
11:10:36
можно ссылку на видео?

Dima
10.01.2017
11:11:13

Anton
10.01.2017
11:32:43

Jamal
10.01.2017
11:39:11
Человеки привет, не подскажете как на сообщество Vue выйти ?

Vladimir
10.01.2017
11:39:26
https://github.com/goq/telegram-list

Дмитрий
10.01.2017
11:55:00

Дмитрий
10.01.2017
11:55:37
Хотя ей конечно можно не следовать))

Vladimir
10.01.2017
11:57:56
А как должно быть по спеке? Можно ссылку для ленивых?)

Дмитрий
10.01.2017
12:01:03
Сначала идут цифровые ключи по возрастанию, потом остальные строковые в порядке добавления, потом символы в порядке добавления

Dima
10.01.2017
12:11:59
Используя либо setTimeout с 0 миллисекунд ожидания, либо process.nextTick для ноды
по этому смысла в setTimeout c 0 я как-то не ухватываю на данный момент: http://latentflip.com/loupe/?code=Y29uc29sZS5sb2coIkludGVyZXN0aW5nIHRoaW5nLiIpCgpiID0gZnVuY3Rpb24oKXsKICAgIGZvciAoaT0wOyBpPDUwOyBpKyspIHNldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zb2xlLmxvZygiYi1pbi1iIil9LDApOwp9CgphID0gZnVuY3Rpb24oKXsKICAgIGZvcihpPTA7IGk8MzsgaSsrKSBiKCkKfQoKYSgp!!!PGJ1dHRvbj5DbGljayBtZSE8L2J1dHRvbj4%3D

Oleg
10.01.2017
12:24:29
В этом коде сначала будет создано 100500 функций, а только потом они исполнены
Или о чем у нас разговор?
Но похоже я понял о чем тут
В коде что на картинке просто создается 100500 функций, падающих в очередь, которые потом исполняются

Google

Oleg
10.01.2017
12:27:33
Если их будет бесконечно - они и будут бесконечно создаваться

Viktor
10.01.2017
12:28:19
ох эта чудесная особенность переборов)

Oleg
10.01.2017
12:28:24
Я имел в виду что можно оптимизировать бесконечный цикл если каждую следующую итерацию запускать через сеттаймаут

Admin
ERROR: S client not available

Viktor
10.01.2017
12:28:43
а что за инструмент на картинке?

Oleg
10.01.2017
12:28:55
Тогда цикл будет и бесконечным, но и не забирать всё свободное время вычислений

Dima
10.01.2017
12:28:59

Oleg
10.01.2017
12:29:22
?

Dima
10.01.2017
12:29:30

Oleg
10.01.2017
12:29:50
Потому что он не дает исполняться ничему кроме своего кода

Dima
10.01.2017
12:30:21

Oleg
10.01.2017
12:30:28
while (true) {console.log(1);} console.log(2); // 2 никогда не будет вызвано

Dima
10.01.2017
12:31:08

Oleg
10.01.2017
12:31:11
Если же мы тело цикла положим в функцию и будем через сеттаймаут вызывать - у нас образуется время свободное на исполнение того что нужно

Dima
10.01.2017
12:31:33

Oleg
10.01.2017
12:31:35
И при этом мы не потеряем бесконечность нашего бесконечного цикла

Dima
10.01.2017
12:31:38

Vladimir
10.01.2017
12:31:47
Тут нет проблемы с тем, что i объявляется без var?

Google

Dima
10.01.2017
12:32:12

famed
10.01.2017
12:32:37
ребят, а никто не в курсе, можно ли чере intellij idea / webstorm подключится по ssh к серверу и редактировать файлы?

Vladimir
10.01.2017
12:33:21

Dima
10.01.2017
12:34:00

Vladimir
10.01.2017
12:35:28

Dima
10.01.2017
12:36:01

Oleg
10.01.2017
12:36:59
Пффф
О чем у нас тогда разговор....
По той ссылке прикольная штука конечно со стеком и прочим
Но не отражает действительности
Приведу пример - если написать в консоле хрома while (true) {console.log(1);} хром зависнет и будет бесконечно выводить 1 и не даст ничего больше ввести.
Если вот что-то на вроде такого ввести - http://pastebin.com/y50wf4XY - оное будет также бесконечно выводить 1, но при этом можно будет ещё что-то в консоль ввести и оное будет работать. В любой момент времени.
То есть оно в фоне работает делая бесконечные вычисления, но дает тебе возможность вычислить что-то ещё


Dima
10.01.2017
12:42:25
Пффф
я понял как вы предлагаете избежать зависания: http://latentflip.com/loupe/?code=aSA9IDA7IGogPSAwOwoKaV9tYXggPSAxMDsgal9tYXggPTEwOwoKbG9vcDEgPSBmdW5jdGlvbigpewogICAgZm9yKHZhciBrPTA7ICBrPDIgOyBrKyssIGkrKyl7CiAgICAgICAgY29uc29sZS5sb2coaSkKICAgIH0KICAgIHNldFRpbWVvdXQobG9vcDEsIDApOwp9Cgpsb29wMiA9IGZ1bmN0aW9uKCApewogICAgZm9yKHZhciBrPTA7IGs8MjsgaysrLCBqKyspewogICAgICAgIGNvbnNvbGUubG9nKGopCiAgICB9CiAgICBzZXRUaW1lb3V0KGxvb3AyLCAwKQp9Cgpsb29wMSgpOyBsb29wMigpOw%3D%3D!!!PGJ1dHRvbj5DbGljayBtZSE8L2J1dHRvbj4%3D

Oleg
10.01.2017
12:43:35
Что-то уже похожее

Dima
10.01.2017
12:45:06
Что-то уже похожее
оно фактически позволяет работать выполнять задачи 2м циклам одновременно не перегружая очередь.