在 JavaScript 中使用 for 循环更改 H1

这里是 JS 新手。我试图获取 H1 标签中的所有值并更改长度小于 4 的值。


它说“请回答问题”我需要它说“请回答你好问题”


let header = document.getElementById("h1").innerHTML;

let splittedText = header.split(" ");


function seperateText() {

  for (let i = 0; i < splittedText.length; i++) {

    if (splittedText[i].length < 4) {


      splittedText[i].innerHTML = "Hello"

    }

  }

  // console.log(splittedText[i]);

  return splittedText[i].innerHTML;

}

seperateText();

<h1 id="h1">Please Answer the Questions</h1>


慕少森
浏览 134回答 1
1回答

侃侃无极

您的代码正在尝试设置字符串的innerHTML - 这不起作用而且 [i] 不存在于循环之外试试这张地图const seperateText = str => {&nbsp; let splittedText = str.split(" ");&nbsp; return splittedText.map(word => word.length > 4 ? word : "hello").join(" ");}let header1 = document.getElementById("h1")header1.innerHTML = seperateText(header1.innerHTML);let header2 = document.getElementById("empty")header2.innerHTML = seperateText(header2.innerHTML);<h1 id="h1">Please Answer the Questions</h1><h1 id="empty"></h1>或者这个替换const seperateText = str => {&nbsp; return str.replace(/\b(\w+)\b/gi, match => match.length < 4 ? "hello" : match);}let header1 = document.getElementById("h1")header1.innerHTML = seperateText(header1.innerHTML);let header2 = document.getElementById("empty")header2.innerHTML = seperateText(header2.innerHTML);<h1 id="h1">Please Answer the Questions</h1><h1 id="empty"></h1>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript