Size: a a a

JavaScript.Ninja

2021 February 16

IK

Illya Klymov in JavaScript.Ninja
Евгений
Это у спред оператора, он одинаково итерируется и по массивам и по объектам с точки зрения спеки, если я ее правильно понял😁
неправильно. У объектов вообще нет итератора
источник

Е

Евгений in JavaScript.Ninja
Illya Klymov
неправильно. У объектов вообще нет итератора
А как он их мержит?
источник

IK

Illya Klymov in JavaScript.Ninja
console.log([][Symbol.iterator], {}[Symbol.iterator])
источник

IK

Illya Klymov in JavaScript.Ninja
первое есть, второго нет
источник

OJ

Oleg Junior in JavaScript.Ninja
Illya Klymov
console.log([][Symbol.iterator], {}[Symbol.iterator])
да, нет. поэтому у меня и возник вопрос есть ли разница. потому что я не знаю как в случае объекта итерация происходит
источник

IK

Illya Klymov in JavaScript.Ninja
Oleg Junior
да, нет. поэтому у меня и возник вопрос есть ли разница. потому что я не знаю как в случае объекта итерация происходит
через ownPropertyKeys
источник

IK

Illya Klymov in JavaScript.Ninja
источник

IK

Illya Klymov in JavaScript.Ninja
7.3.25
источник

OJ

Oleg Junior in JavaScript.Ninja
Illya Klymov
через ownPropertyKeys
ммм. получается тогда то же самое O(n) . я так понимаю
источник

IK

Illya Klymov in JavaScript.Ninja
Oleg Junior
ммм. получается тогда то же самое O(n) . я так понимаю
Нет, я к примеру затрудняюсь ответить сколько стоит проверка что такое свойство уже есть в объекте
источник

IK

Illya Klymov in JavaScript.Ninja
Зависит от способа хранения объекта в памяти (у v8 я их знаю минимум два)
источник

IK

Illya Klymov in JavaScript.Ninja
Это как посмотреть на код и сказать что arr.sort выполняется за О(1), мы ж одну команду написали :)
источник

OJ

Oleg Junior in JavaScript.Ninja
Illya Klymov
Нет, я к примеру затрудняюсь ответить сколько стоит проверка что такое свойство уже есть в объекте
"проверка что такое свойство уже есть в объекте" - при написании кода я всегда ориентируюсь что константная сложность.
источник

IK

Illya Klymov in JavaScript.Ninja
А в реальности это так только до 32 свойств объекта если мне не изменяет память и не поменяли логику
источник

IK

Illya Klymov in JavaScript.Ninja
после этого v8 начинает хранить объект как массив пар ключ-значение
источник

OJ

Oleg Junior in JavaScript.Ninja
Illya Klymov
А в реальности это так только до 32 свойств объекта если мне не изменяет память и не поменяли логику
забавно. я такого не знал. недавно код писал там у меня оптимизация типо была что я на это ориентировался. там у меня 14000 примерно в объекте было
источник

IK

Illya Klymov in JavaScript.Ninja
источник

Е

Евгений in JavaScript.Ninja
Illya Klymov
после этого v8 начинает хранить объект как массив пар ключ-значение
А с точки зрения си (или на чем там v8) это список?
источник

IK

Illya Klymov in JavaScript.Ninja
Евгений
А с точки зрения си (или на чем там v8) это список?
нет, там хитрая система, это список массивов (опять же меня может глючить и могли поменять)
источник

Е

Евгений in JavaScript.Ninja
Illya Klymov
нет, там хитрая система, это список массивов (опять же меня может глючить и могли поменять)
Короче, хештаблицы))
источник