知りたいこと
HTMLから要素を取得する際に大きく2種類の書き方があるように思います。
どのように使い分けたらいいでしょうか?
2種類の書き方
例えば下記HTML要素を取得したい場合、
html
1<div id="hoge">hoge</div> 2 3<div class="fuga">fuga</div> 4 5<div class="fuga-fuga">fuga-fuga</div> 6<div class="fuga-fuga">fuga-fuga</div> 7<div class="fuga-fuga">fuga-fuga</div> 8 9<p>Paragraph</p>
.getXXXXXXX()で取得
javascript
1const hoge =document.getElementById('hoge'); 2const fuga = document.getElementsByClassName('fuga')[0]; 3const fugaFuga = document.getElementsByClassName('fuga-fuga'); 4const p = document.getElementsByTagName('p')[0];
.querySelector() / .querySelectorAll()で取得
javascript
1const hoge = document.querySelector('#hoge'); 2const fuga = document.querySelector('.fuga'); 3const fugaFuga = document.querySelectorAll('.fuga-fuga'); 4const p = document.querySelector('p');
2種類あります。console.log(fugaFuga)
で確認してみると、HTMLCollection
とNodeList
といった違いが見えます。
しかし、クリックイベントなど、どちらの要素の取得方法でも問題なく使えるので、違いが分かりません。
こういう操作をするときは、こちら、のような使い分けはありますでしょうか。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/03/08 03:11
2021/03/08 03:30
2021/03/08 03:36