A simple way to quickly check if an HTML element has a specific attribute or not.
HTML要素に「この属性は付いているかな?」をサクッと調べて、あるかないかをすぐに判断できるチェック機能。
hasAttribute() は、あるHTML要素が「指定した属性を持っているかどうか」を確かめるためのメソッドです。
「この要素に disabled は付いている?」「data-id はある?」といった“ある・ない”をシンプルに判定できます。
結果は true(ある) か false(ない) のどちらかなので、条件分岐ととても相性が良いです。
値の中身を読むのではなく、「存在しているか」だけをチェックする点がポイントです。
JavaScript
const button = document.querySelector('button');
if (button.hasAttribute('disabled')) {
console.log('このボタンは無効になっています');
} else {
console.log('このボタンは有効です');
}
hasAttribute('属性名')true、なければ false を返します。JavaScript
const link = document.querySelector('a');
if (link.hasAttribute('target')) {
console.log('このリンクは別タブで開きます');
}
JavaScript
const box = document.querySelector('.box');
if (box.hasAttribute('data-user-id')) {
console.log('ユーザーIDが設定されています');
}
JavaScript
const input = document.querySelector('input');
if (!input.hasAttribute('required')) {
input.setAttribute('required', '');
}
getAttribute()null)hasAttribute()true / false で判定「値が何か」よりも「付いているかどうか」だけ知りたい時は、hasAttribute() のほうが直感的で安全です。
disabled / checked など)でも正しく判定できます