Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   alert({ня:3} == {ня:3})//false (https://javascript.ru/forum/misc/24306-alert-%7Bnya-3%7D-%3D%3D-%7Bnya-3%7D-false.html)

dmitriymar 25.12.2011 19:43

Цитата:

Сообщение от Livaanderiamarum
у вас не обьекты сравниваются а строка с числом. это не хэши, про которые мы говорим.

пример на вашу фразу по поводу примитивных значений. а вот по мне что 5 в любом случае это 5.
и что дальше?
а по вашему вопросы читаем доки- по поводу ,что такое есть заключённое в {}

Livaanderiamarum 25.12.2011 19:43

Цитата:

Сообщение от B@rmaley.e><e (Сообщение 145888)
Как видно, сравнение объектов перебором их структуры может быть затратным.

как я вас понял так сделали из-за затратности. ясно. значит для сравнения обьектов как таблиц мне нужно писать отдельную функцию.. спасибо за наводку).

monolithed 25.12.2011 19:56

Цитата:

Сообщение от Livaanderiamarum
значит для сравнения обьектов как таблиц мне нужно писать отдельную функцию

Логично.
Объект — это коллекция свойств, имеющая также связанный с ней объект-прототип.

B@rmaley.e><e 25.12.2011 19:58

Цитата:

Сообщение от Livaanderiamarum
ты прочитал только фразу "Сравнил значения ключей" или весь мой текст? если не весь то прочитай весь

Весь. Но из
Цитата:

Сообщение от Livaanderiamarum
анализ на цикличность ссылок

не понятно, как это поможет дать ответ в этом случае.

Livaanderiamarum 25.12.2011 19:59

Цитата:

Сообщение от monolithed (Сообщение 145902)
Логично.
Объект — это коллекция свойств, имеющая также связанный с ней объект-прототип.

логично было бы включить это в спецификацию

Livaanderiamarum 25.12.2011 20:00

Цитата:

Сообщение от B@rmaley.e><e (Сообщение 145904)
Весь. Но изне понятно, как это поможет дать ответ в этом случае.

анализ на цикличность ссылок на нижнем уровне реализации языка.
(абстрактно всего их 2 если кто не знает)

monolithed 25.12.2011 21:22

Цитата:

Сообщение от Livaanderiamarum
логично было бы включить это в спецификацию

что включить?

Livaanderiamarum 25.12.2011 21:49

Цитата:

Сообщение от monolithed (Сообщение 145948)
что включить?

сравнение идентичности, например ====

trikadin 25.12.2011 22:00

Livaanderiamarum, это объясняется тем, что в DOM-модели браузера могут быть два идентичных объекта (с одним тегом и набором атрибутов), но это будут разные объекты. Смекаешь?

FINoM 25.12.2011 22:10

Livaanderiamarum, если сильно надо сравнить два объекта, можно сделать так:
JSON.stringify(obj1) === JSON.stringify(obj2)


Часовой пояс GMT +3, время: 10:02.