Это не так, вы бы получили тот же результат, если бы просто повторили первую строку с d2
вместо d1
. Однако два объекта, которые вы создаете, являются различными объектами, и поэтому они не ==
. ==
со ссылками на объект проверяет, ссылаются ли два операнда на один и тот же объект ( Раздел 11.9.3 спецификации). У вас есть два объекта, каждый из которых имеет свойство key
со значением "значение".