devote, получается, что при каждом вызове dataset нужно перебирать всё и сравнивать с атрибутами. Ах, да, еще одна проблема:
var dataset = el.dataset;
dataset.a = 1; // ← не сработает
------
Можно ли как-то известные свойства объекта коммента сделать «невидимыми» для for in в IE8?