Javascript 根据我的理解,下面给出的代码片段应该有相同的结果,但当我使用第二个代码片段时,我得到了一个错误。我错过了什么?

Javascript 根据我的理解,下面给出的代码片段应该有相同的结果,但当我使用第二个代码片段时,我得到了一个错误。我错过了什么?,javascript,foreach,Javascript,Foreach,为什么我在使用语法02时会出现错误,该语法表示无法读取未定义的属性add?01和02的区别是什么请解释。因为string tag.innerText没有属性类列表,第一个是tag.classList,但第二个是tag.innerText.classList.let strings=tag.innerText-这里字符串是字符串数据类型,它没有任何属性类列表,因为它不是对象。我知道您可能对堆栈溢出还不熟悉,但我建议您在发布问题之前先调试一下。@jaybhatt谢谢您的帮助。是的,我是新来的,为粗制

为什么我在使用语法02时会出现错误,该语法表示无法读取未定义的属性add?01和02的区别是什么请解释。

因为string tag.innerText没有属性类列表,第一个是tag.classList,但第二个是tag.innerText.classList.let strings=tag.innerText-这里字符串是字符串数据类型,它没有任何属性类列表,因为它不是对象。我知道您可能对堆栈溢出还不熟悉,但我建议您在发布问题之前先调试一下。@jaybhatt谢谢您的帮助。是的,我是新来的,为粗制滥造的行为道歉。下次我会记住的。
let tags = document.querySelectorAll('p');

console.log(tags);

tags.forEach(tag => {
    let strings = tag.innerText;
    
    if(strings.includes('error')){
        tag.classList.add('error');
    }else if(strings.includes('success')){
             tag.classList.add('success');}
             
});
let tags = document.querySelectorAll('p');

console.log(tags);

tags.forEach(tag => {
    let strings = tag.innerText;
    
    if(strings.includes('error')){
        strings.classList.add('error');
    }else if(strings.includes('success')){
             strings.classList.add('success');}
             
});