当前位置:首页 > JavaScript

js 实现hasclass

2026-04-05 10:05:13JavaScript

实现 hasClass 方法

使用原生 JavaScript 实现 hasClass 功能,可以通过以下两种方式完成:

方法一:使用 classList.contains

现代浏览器支持 classList API,提供更简洁的语法:

function hasClass(element, className) {
  return element.classList.contains(className);
}

方法二:兼容旧版浏览器

对于不支持 classList 的旧浏览器,可以通过字符串操作实现:

js 实现hasclass

function hasClass(element, className) {
  return (' ' + element.className + ' ').indexOf(' ' + className + ' ') > -1;
}

注意事项

  • 方法一在 IE9 及以下版本不可用。
  • 方法二通过添加空格避免误匹配子字符串(例如 test 不会误判 test2)。
  • 两种方法均区分大小写。

使用示例

const div = document.querySelector('div');
console.log(hasClass(div, 'active')); // 输出 true 或 false

性能优化

若需频繁检查类名,建议优先使用 classList.contains,其性能优于字符串操作。

标签: jshasclass
分享给朋友:

相关文章

js实现报表

js实现报表

使用JavaScript实现报表 在JavaScript中实现报表功能可以通过多种方式完成,常见的方法包括使用原生JavaScript、第三方库(如Chart.js、D3.js)或结合后端数据渲染。以…

js 实现链表

js 实现链表

链表的基本概念 链表是一种线性数据结构,由一系列节点组成,每个节点包含数据和指向下一个节点的指针。与数组不同,链表在内存中是非连续存储的,插入和删除操作效率较高。 链表的实现 在 JavaScrip…

使用js实现

使用js实现

使用JavaScript实现 JavaScript可以通过Math.random()函数生成随机数,结合其他方法可以实现多种随机数生成需求。 // 生成0到1之间的随机小数 const random…

js节流实现

js节流实现

节流的概念 节流(Throttle)是一种限制函数执行频率的技术,确保函数在一定时间间隔内只执行一次。常用于滚动事件、窗口调整等高频触发的场景。 基础实现方法 使用时间戳判断是否执行函数: fun…

js实现文字滚动

js实现文字滚动

实现文字滚动的几种方法 使用CSS动画实现滚动 通过CSS的@keyframes和transform属性可以实现平滑的文字滚动效果。 <style> .scroll-text { w…

js 实现跳转

js 实现跳转

使用 window.location.href 进行跳转 通过修改 window.location.href 可以跳转到指定 URL,浏览器会加载新页面: window.location.hre…