Объект Javascript против словаря JScript
-
09-09-2019 - |
Вопрос
Объекты Javascript и словарь JScript являются ассоциативными массивами.
obj = new Object ;
dic = new ActiveXObject("Scripting.Dictionary") ;
Мой вопрос...Есть ли между ними разница по эффективности (либо по пространству, либо по времени)??
С точки зрения функциональности я знаю, что словарь лучше, потому что он позволяет использовать в качестве ключей не только скалярные типы.Но если оставить это в стороне, какой из них лучше/быстрее?
РЕДАКТИРОВАТЬ:
Это для сценариев Windows, а не для веб-разработки.
РЕДАКТИРОВАТЬ2:
Меня особенно интересует эффективность поиска, поскольку мне придется работать с большими коллекциями.
Решение
Из этого документа следует, что поиск выполняется быстрее с помощью словаря;однако вставки медленнее.
Другие советы
Scripting.Dictionary — это компонент COM/ActiveX (может использоваться на любом языке сценариев MS).
Я бы не рекомендовал это делать, потому что каждый раз, когда вы обращаетесь к нему, вы вызываете компонент COM, а это очень медленно.
Но если вам нужен его функционал, вы можете использовать его, но учтите, что он работает только в IE...
Объекты Javascript являются неотъемлемой частью механизма выполнения;Scripting.Dictionary — это COM-объект, выполняющий вызовы взаимодействия при каждой операции.
Для всего, что связано с javascript, я бы предпочел использовать встроенный тип, если только у меня не было острой необходимости в поиске на основе какого-либо другого COM-объекта с хорошей семантикой равенства...