需求:在网页端中通过getElementsByClassName获取到一个元素,想提取其中的数字内容做个if判断,奈何一直提取不了
开始获取元素时,以为默认就是字符类型;但使用操作字符的函数就失败,然后就考虑数据类型是不是有问题,typeof出来之后是object类;然后照着网上的方法toString转换成字符串,转换后时object text,就还是不行;然后又查了object怎么转字符类型,据网上的方法JSON.stringify(),还是不行,虽然理解是怎么对这个object类进行。
最后是无意中在控制台用" . "尝试调出的其他方法,发现通过".data"提出的内容为字符类型。终于解决了,记录一下!
javascript
let num = document.getElementsByClassName("news_time")[1].childNodes[5].childNodes[2]
console.log(typeof(num))
num.toString()
'[object Text]'
JSON.stringify(num)
'{}'
Object.keys(num);
[]length: 0[[Prototype]]: Array(0)
console.log(num.length)
VM9291:1 13
console.log(num.data)
VM9389:1 1学时
//终于成功了!!!
console.log(num.data.replace(/[^\d]/g, ""))