Korzystanie z magazynu danych jQuery w stosunku do właściwości expando

Zajmuję się tworzeniem kodu za pomocą jQuery i muszę przechowywać dane związane z określonymi elementami DOM. Jest jeszcze kilka innych pytańw jaki sposób do przechowywania dowolnych danych za pomocą elementu HTML, ale bardziej interesuje mnie, dlaczego wybrałbym jedną opcję nad drugą.

Powiedzmy, ze względu na bardzo uproszczony argument, że chcę przechowywać właściwość „lineNumber” z każdym wierszem w „interesującej” tabeli.

Opcja 1 polega na ustawieniu właściwości expando na każdym elemencie DOM (mam nadzieję, że użyję terminu „expando” poprawnie):

$('.interesting-line').each(function(i) { this.lineNumber = i; });

Opcja 2 polegałaby na użyciu funkcji data () jQuery do powiązania właściwości z elementem:

$('.interesting-line').each(function(i) { $(this).data('lineNumber', i); });

Czy ignorując wszelkie inne niedociągnięcia mojego przykładowego kodu, istnieją poważne powody, dla których wybrałbyś jeden ze sposobów przechowywania właściwości na drugim?