@vuejs_ru

Страница 124 из 3900
Rafael
04.02.2017
07:59:26
тогда еще раз мне поясните, какой тогда смысл в ключах в виде объекта?

из разных мест же нельзя будет получить нужный объект, а таскать с собой еще и массив ключе - ну бреед жеж

Vitaly
04.02.2017
08:00:44
ну... ты можешь сделать let key = {a: 1}; map.set(key, false); key.a = 2; map.has(key) = true

Rafael
04.02.2017
08:00:50
такой подставы я от js не ожидал :/

Google
Alex
04.02.2017
08:01:08
Всё логично!)

Rafael
04.02.2017
08:01:14
ну вот теперь я не могу использовать Map как хранилищие и доставать, пихать в него какие-то элементы

Alex
04.02.2017
08:02:34
можешь попробовать в ключ класть не объект, а строку после JSON.stringify

Vitaly
04.02.2017
08:02:55
не не, стринга будет разная)

Alex
04.02.2017
08:03:18
Vitaly
04.02.2017
08:03:26
порядок не гарантирован при JSON.stringify

Rafael
04.02.2017
08:03:57
я как раз и использовать словарь хотел, потому что у него операции get, set, has должны стоить всего О(1) при использовании хешей

в плюсах бы все прокатило и все были бы счастливы

порядок не гарантирован при JSON.stringify
впрочем это подталкивает на мысль, что можно использовть шаблонные строки

но обратно как?

Alex
04.02.2017
08:05:54
ааа... дааа... засада) может и так сложиться

Google
Alex
04.02.2017
08:06:22
в плюсах бы все прокатило и все были бы счастливы
ну а это js, значит надо страдать))))

Rafael
04.02.2017
08:06:48
ну а это js, значит надо страдать))))
не, ну мне кончено говорили что js срань, но чтобы настолько :D

Alex
04.02.2017
08:07:09
ты просто не умеешь её готовить)))

Vitaly
04.02.2017
08:07:54
А можешь напомнить какую проблемы ты решаешь?)

Rafael
04.02.2017
08:08:30
А можешь напомнить какую проблемы ты решаешь?)
то, что я не могу нормально использовать has

Vitaly
04.02.2017
08:09:59


Rafael
04.02.2017
08:10:03


const pointToJSON = ({x, y}) => {"x":${x},"y":${y}}``

Vitaly
04.02.2017
08:13:05
да не, жесть какая-то)

Rafael
04.02.2017
08:13:30
что не сделаешь ради скорости работы с словарем

хотя парсинг может и съекст пости все

не, не съест

Vitaly
04.02.2017
08:14:38
что бы работать с has тебе нужно будет мутировать один и тот же объект const a = new Map(); const b = new Map(); b.set(a, false); a.set('d', true) b.has(a) // true

то есть просто не создавай новый объект)

Stanislav
04.02.2017
08:15:37
О какой производительности парсинга ты говоришь?

Vitaly
04.02.2017
08:17:26
ну в смысле не создавай новый ключ, а мутируй старый. там проверка на key === key, соответственно new Object === new Object // false

логично же)

Rafael
04.02.2017
08:18:33
ну в смысле не создавай новый ключ, а мутируй старый. там проверка на key === key, соответственно new Object === new Object // false
а как мне обойтись без его создания то? у меня сам словарь создает и заполняется в одном месте, а изменяется в совсем другом

Google
Rafael
04.02.2017
08:19:06




Alex
04.02.2017
08:21:00
номера строк это конечно круто, особенно когда их нет на скрине)))

Rafael
04.02.2017
08:21:18


уппс, мой косяк))

Alex
04.02.2017
08:21:37
так может тебе вместо объекта просто конструировать строку из индексов? к примеру разделенными минусами или еще чем

Rafael
04.02.2017
08:22:34


и парсить обратно через json.parse

Vitaly
04.02.2017
08:25:33
это все дорогие операции, я не совсем вкурил в то, что происходит, но рас уж на то пошло, то заэкстендь Map и напиши свой has)

Rafael
04.02.2017
08:26:16
хотя попробовать можно

тогда нужно будет везде переписать операции сравнения

Vitaly
04.02.2017
08:30:23
можешь еще выпендриться и ключем сделать не объект, а массив и делать join/split

Rafael
04.02.2017
08:30:56
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/WeakMap

а что насчет этого?



Vitaly
04.02.2017
08:37:23
Да тут тебе ничего не поможет, можешь не пытаться)

Rafael
04.02.2017
08:37:36
может кто уже написал свою реализацию? правда загуглить не получается :/

Vitaly
04.02.2017
08:39:31
Блин, ну представь что ты сравниваешь кусок памяти с куском памяти на то что это один и тот же кусок, конечно нет)

Google
Rafael
04.02.2017
08:48:43
карочи срань

я то думал что там не по адресу сравнение идет, а например по хешу или по побитовому сранвнению

Почему они не могут как во всех нормальных языках сделать возможность нормального сравнения?

В итоге это выясняется когда уже все написал и осталось всего пара строчек, чтобы, как я думал, заработало как надо

Alexandr
04.02.2017
08:52:49
чувак, это буквально в первых параграфах любой книги объясняется

когда разговор заходит за операторы сравнения

Rafael
04.02.2017
08:53:39
Все все, ушёл читать

Хотя есть выход, там ведь в качестве ключа можно функцию передавать, может быть это можно как-то задействовать, надо будет посмотреть

Rafkat
04.02.2017
08:56:11
Всем привет

Admin
ERROR: S client not available

Vitaly
04.02.2017
08:56:53
Хотя есть выход, там ведь в качестве ключа можно функцию передавать, может быть это можно как-то задействовать, надо будет посмотреть
НЕТ!))) Хватит, храни массив, джойнь его) class MyMap extends Map { hasKey(key) { return this.has(key.join(',')) } pushKey(key, value = false) { this.set(key.join(','), value); return this; } }

Alex
04.02.2017
08:57:30
?

Andrey
04.02.2017
09:01:28
тогда от хеша никакого отличия нет

только еще хуже - очень медленно

Rafael
04.02.2017
09:04:22
А у меня она самая частая

Stanislav
04.02.2017
09:15:24
Такое чувство, будто ты там базы данных на клиенте ворочаешь. Что там Кнут говорил по этому поводу?

Rafkat
04.02.2017
09:21:15
Коллеги, такой вопрос

Как подключать компонент навбара для приложения?

Stanislav
04.02.2017
09:23:11
Чочо

Google
Rafkat
04.02.2017
09:23:27
Сделать App.vue как основную точку входа в приложение?

А ней например писать в шаблоне

<navbar></navbar> <router-view></router-view>

вообще как бы предложили где стоит хранить и как подключать компоненты приложения, ту же страницу логина например

Stanislav
04.02.2017
09:27:34
Укажи в components app.Vue твой navbar

Rafkat
04.02.2017
09:28:10
спасибо

это понятно

в принципе здесь так и сделано

https://github.com/vuejs/vue-hackernews-2.0/blob/master/src/App.vue

Stanislav
04.02.2017
09:29:57
И в vue-cli тоже

Rafael
04.02.2017
09:32:44
Я вот думаю, может не париться и ключи сделать строчками?

Сравнение коротких строчек не такое уж и дорогое

Точно не дороже сравнения объектов

Rafael
04.02.2017
09:36:17
Символы?
строки

Stanislav
04.02.2017
10:06:38
Да :)

Igor
04.02.2017
10:13:33
js отстой, поэтому и maps/sets в нём такие отстойные ?

Illya
04.02.2017
10:25:11
Да и вообще нечего на js писать

Rafael
04.02.2017
10:25:27
не, ну что вы так, я все исправил

Illya
04.02.2017
10:25:38
(троллей не кормлю)

Страница 124 из 3900