使用 JS 的简单用户名提示无法正常运行

Simple username prompt using JS not functioning correctly

我正在制作一个非常简单的 JavaScript 用户名提示,按下按钮后,要求用户输入用户名。用户输入姓名后,代码会用用户的用户名编写一个简单的问候语。但是,如果他们将其留空,则会出现一条警告,指出用户名不能为空。

该按钮有效并出现提示,但当您输入空白用户名时,错误不会出现。

我尝试用 undefined 替换 null,但是当我这样做时,任何输入,包括没有输入用户名,总是会出现错误。

我无法弄清楚我的以下代码有什么问题:

function usernametest() {
  let username = prompt("Enter a username");

  if (username != null) {
    document.write("Hello " + username + "! How are you today?");
  } else {
    alert("Username cannot be blank!");
  }
}
<input type="button" value="Click to test username prompt" onclick="usernametest();">

您应该检查一个空字符串。

if (username != '')

如果要确保用户名不只是空格,可以使用.trim()。另见 my answer here

if(username.trim())

也检查空字符串

if (username != null && username != '') {
    document.write("Hello " + username + "! How are you today?");
} 

function usernametest() {

let username = prompt("Enter a username");

if (username != '') {
    document.getElementById('text').innerHTML ="Hello " + username + "! How are you today?";
    } 
else {
    alert("Username cannot be blank!");
}
}
<input type="button" value="Click to test username prompt" onclick="usernametest();">
<div id='text'><div>