要素から複数の html5 データ属性を取得する必要があるユース ケースがあります。これは、多くの要素にわたるループ内で発生し、キャッシュのためにデータを配列にプッシュします。
いくつかの調査を行うとel.getAttribute('data-whatever')
、ネイティブの html5dataset
メソッドを使用するよりも高速に使用できるように見えますが、同じ要素から約 5 つの個別のデータ属性を取得する必要があります。
このdataset
メソッドを使用すると、1 回の呼び出しですべてのデータ属性を取得し、標準のオブジェクト ドット表記法 (dataset.index、dataset.whatever、dataset.somethingelse) を使用してそれらにアクセスできますがgetAttribute
、必要なすべてのデータを取得するには getAttribute 呼び出しを繰り返す必要があります。 .
非準拠の属性を使用する場合は、もちろんドット表記を使用してプロパティにアクセスし、この関数を大幅に高速化できます。しかし、html5 データ属性を使用すると、これは機能しません (つまり、el.data-whatever は常に未定義になります)。
標準への準拠を維持したいので、これらの複数のデータ属性を取得する最速の方法を探しています。
前もって感謝します。