|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
все шагают не в ногу, только ведущий профессионал в ногу.... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 11:23 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
Интересно... С каких ЯП приходят все эти грамотеи что JS, и много кто еще, обзываются ими как "недоязыки"? Или они программки пишут волшебной палочкой, которая может обеспечить мгновенную проверку на "совпадение" сложных элементов языка... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 11:28 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
krvsa Интересно... С каких ЯП приходят все эти грамотеи что JS, и много кто еще, обзываются ими как "недоязыки"? После плюсов на все смотришь, как на дерьмо. Давно замечено, что сей язык раздувает чсв. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 11:44 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
crutchmaster, особенно для. веба - прям все на сях написано. надо просто научиться программировать..... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 12:34 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
crutchmaster После плюсов на все смотришь, как на дерьмо. Давно замечено, что сей язык раздувает чсв. Это, видать, так же зависит от самого человека... Довольно долгое время имел в "напарниках" по разработке спеца в этом (и не только) ЯП. Никакого "раздутия" не наблюдал. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 12:42 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
вадя, Программист на фортране может писать на фортране на любом языке! ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 12:43 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
crutchmaster вадя, Программист на фортране может писать на фортране на любом языке! ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 12:47 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
crutchmaster Ведущий профессионал С объектам Set в этом недоязыке работать не умеет. С содержимым объектов, профи. Код: sql 1. 2. 3.
Впрочем, как другие недоязыки типа жабки или питона. Ведущий профессионал (у меня в данных пробелов нет, потому объединение через пробел подходит). Подходило бы, даже если бы они и были. Главное не обделайся с порядком. Ключи перебираются в том же порядке, каком были добавлены, так что надеяться на него не стоит. Ты же не знаешь, что с ним делали по дороге до тебя. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 13:13 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
krvsa Интересно... С каких ЯП приходят все эти грамотеи что JS, и много кто еще, обзываются ими как "недоязыки"? Или они программки пишут волшебной палочкой, которая может обеспечить мгновенную проверку на "совпадение" сложных элементов языка... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 13:16 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
crutchmaster krvsa Интересно... С каких ЯП приходят все эти грамотеи что JS, и много кто еще, обзываются ими как "недоязыки"? После плюсов на все смотришь, как на дерьмо. Давно замечено, что сей язык раздувает чсв. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 13:17 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
crutchmaster, crutchmaster Во-первых, не на ассемблере, а на плюсах. Во-вторых, на v8 есть jit компилятор, а не только байткод, Немного устарелые сведения и недопонимание, как происходит оптимизация (на примере V8) Встроенные функции сейчас написаны на CSA (CodeStubAssembler) Это некий универсальный ассемблерный язык, позволяющий работать с памятью и объектами JS, который компилируется в ассемблер конкретной машины. От С++ для функций отказались. Обработка JS программ в V8 происходит следующим образом: Сначала происходит синтаксический разбор и строится AST (Абстрактное синтаксическое дерево) Затем интерпретатор Ignition выполняет его, генерует байткод для выполняемых операторов и исполняет его (конечно повторно байткод не генерится) Фактически для каждой функции байткод генерится только в момент ее первого вызова. Есть оптимизирующий компилятор TurboFan, который может преобразовать байткод в оптимизированный ассемблерный код. Но происходит это далеко не всегда. Сначала для каждой функции собирается статистика ее вызовов. Одно из требований что бы каждый раз функция вызывалась с одинаковыми типами параметров. (Кстати 1 и 1. - это разные типы. {a:1, b:2} и {b:3, a:4} - это разные типы, [1,2,3,4] и [1,2,3.,4] - тоже разные типы) И только после того, как соберется хорошая статистика (а это несколько тысяч вызовов данной функции) принимается решение оптимизировать ее TurboFan ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 13:26 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
Ведущий профессионал krvsa Интересно... С каких ЯП приходят все эти грамотеи что JS, и много кто еще, обзываются ими как "недоязыки"? Или они программки пишут волшебной палочкой, которая может обеспечить мгновенную проверку на "совпадение" сложных элементов языка... Другие языки сначала долго и нудно компилятся. В других языках компилятор знает, какого типа переменные, что бы подобрать для операции функцию, если она переопределена. В JS в режиме интерпретации байткода придется для каждой операции выяснять нет ли функции, которая переопределяет эту операцию. И все это в режиме выполнения, а не компиляции. Потом такие умники будут выть, что браузер страшно тормозит, каждый клик обрабатывается по 10 сек. И работать в интернете ваще невозможно, а мобильники разряжаются после просмотра 10 страниц. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 13:39 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
Ведущий профессионал, ты как веган, стремишься всех убедить в своем мнении. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 13:43 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
Ведущий профессионал в других языках программист может задать свой оператор сравнения. Я рад за тебя. Но только в JS это вообще не требовалось никогда. Потому этого и нет. Тут достаточно средств для решения проблем. Я уже писал в другой теме - не стоит тащить за уши приемы одного ЯП в другой. В другом полно своих приемов для решения задач. Вполне вероятно что ты вообще не правильный подход взял для решения проблемы на JS, пытаешься использовать приемы другого языка. P.S. Сравнение с веганом поддерживаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 13:53 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
krvsa Ведущий профессионал в других языках программист может задать свой оператор сравнения. Я рад за тебя. Но только в JS это вообще не требовалось никогда. Потому этого и нет. Тут достаточно средств для решения проблем. Ну мне иногда хотелось бы иметь возможность переопределить + для сложения векторов или * и / для умножений делений вектора на число. Да и === для сравнения равенства точек (а == для равенства с некоторой погрешностью). Мечты... мечты... ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 14:08 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
voraa , для реализации "желания" не обязательно переделывать "стандартные символы операций", можно написать функцию или метод, который будет возвращать нужный результат. Т.е. не Код: javascript 1.
а Код: javascript 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 14:21 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
krvsa voraa , для реализации "желания" не обязательно переделывать "стандартные символы операций", можно написать функцию или метод, который будет возвращать нужный результат. Т.е не Код: javascript 1.
A Код: javascript 1.
Ну, что. Красиво. Наглядно, Понятно (Если со скобками не напортачил). От колбеков в свое время отказались еще и по причине их ненаглядности. Сложности разбираться что там кого за кем вызывает. Промисы проще и нагляднеею А async/await еще проще и нагляднее Ведь по эффективности и возможностям колбеки ничем не уступают. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 14:28 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
voraa , не обязательно писать все в одну кучу. Ну и коронный вопрос - вам с шашечками или ехать? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 14:34 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
krvsa, Конечно ехать. (Но иногда надежнее ехать с шашечками). Просто JS хорош. Но коего чего не хватает. Есть, так сказать, отдельные недостатки. Его улучшают, как могут. Но не кардинально. Просто синтаксический сахар, чаще всего. Подавляющее большинство синтаксических конструкций, которые появились за последние годы ничего кардинально нового не ввели. Начиная с class , кончая последними операторами, типа .? или ?? . Все это было возможно делать и другими средствами. Не так кратко и красиво, но возможно. Нового, чего раньше не было, и совсем уж проблематично реализовать - Symbol, Генераторы, Приватные поля. Пожалуй больше ничего и в голову не приходит. Ну согласитесь, что с перегрузкой операторов и защищенными полями JS стал бы гораздо лучше. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 14:50 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
voraa Ну согласитесь, что с перегрузкой операторов и защищенными полями JS стал бы гораздо лучше. Какие наши годы! Будет потребность - будут и добавки. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 15:13 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
krvsa Ведущий профессионал , вот нашел тебе статейку на тему "сравнения объектов"... https://codeguru.info/kak-sravnit-obekty-v-javascript/ Там есть разные варианты с примерами. по сабжу - либо назначать объектам уникальный id, либо использовать иммутабельность, либо таки да, придумать функцию сериализации в строку. непонятно, какова задача, какая судьба у объектов и что с ними может происходить. формулировка в стартовом посте лишена смысла. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 19:30 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
Имя пользователя1 "ромбы" или (особенно) циклы Покажи примеры этих элементов. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 19:37 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
krvsa, У объектов могут быть методы. Как сравнивать одинаковы ли функции? Объекты имееют прототип. Одинаковы ли элементы, если они имеют разный прототип? Те примеры дадут, что Код: javascript 1. 2.
одинаковые объекты. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.08.2021, 20:47 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
ЖС в этом плане действительно отсталый язык. Где нет ни оверлоада функций нормального с типами, ни мульти диспатч, ни екстеншен методов, ни сложных структур данных, ни понимания хеш/еквалити и т.п. А то что ничего из этого не нужно. Это как зелен виноград. Это все нужные вещи. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.08.2021, 00:45 |
|
Сложные структуры в качестве ключа в set
|
|||
---|---|---|---|
#18+
ЖС это идеи ЛИСП которые за несколько дней превратили во что то типа Java чтобы выглядело привычно и лучше продавалось. Каким то чудом все это довольно хорошо заработало. Затем Гугл и другие влили океаны бабла, и превратил это в достаточно хороший язык. Затем Микрософт добавил ТайпСкрипт и получилось вполне нормально. Но многие базовые, тривиальные и нужные вещи, просто невозможно добавить не разрушив уже сложившиеся жаваскрипт практики и совместимость. Поэтому даже накачанный до предела баблом и в принципе довольно неплохой язык жаваскрипт так и остается с рядом фундаментальных дефектов. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.08.2021, 00:49 |
|
|
start [/forum/topic.php?fid=22&msg=40087872&tid=1443196]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
51ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
others: | 247ms |
total: | 403ms |
0 / 0 |