Разница между методами .attr() и .hasAttribute() в jQuery заключается в их назначении:
Таким образом, метод .attr() используется для работы со значением атрибута, а метод .hasAttribute() — для проверки наличия конкретного атрибута в элементе.
При этом в jQuery нет встроенного метода .hasAttribute(), но достичь той же функциональности можно с помощью комбинации других методов. 1