如何使用JavaScript与jQuery从HTML td元素的日期字符串中提取年份?现有代码失效求助
如何从HTML td元素的日期字符串中提取年份?
嘿,我帮你排查下问题,顺便给你几个可行的解决方案~
首先看你写的代码,直接导致运行失败的原因是jQuery选择器的引号不匹配:你写的$(.date-table')左边缺少单引号,应该改成$('.date-table')才行。
不过除了这个语法错误,咱们还可以考虑两种提取年份的方式,适配不同场景:
方案一:修正后使用Date对象解析
如果你需要后续还用到日期的其他部分(比如月份、日期),可以用这种方式,记得先校验日期有效性:
// 修正选择器,同时用trim()去除可能存在的空格 var dateStr = $('.date-table').text().trim(); var dateObj = new Date(dateStr); // 先检查日期是否能被正确解析 if (!isNaN(dateObj.getTime())) { var year = dateObj.getFullYear(); console.log('提取到的年份:', year); // 输出2021 } else { console.log('日期格式无效,无法解析'); }
方案二:直接分割字符串(更稳妥)
既然你的日期格式是固定的YYYY-MM-DD,直接按-分割字符串取第一个元素是最直接且不受浏览器兼容性影响的方式:
var dateStr = $('.date-table').text().trim(); var year = dateStr.split('-')[0]; console.log('提取到的年份:', year); // 输出2021
这种方法不需要依赖Date对象的解析逻辑,对于固定格式的日期来说更高效可靠。
内容的提问来源于stack exchange,提问作者john
相关产品推荐
相关产品推荐

