簡體   English   中英

if/else 語句似乎在 Javascript 中不起作用,我不知道我做錯了什么

[英]If/else statements just do not seem to be working in Javascript and i don't know what I am doing wrong

我正在努力讓它為 Javascript 魔術 8 球工作,對於我的一生,我無法弄清楚問題是什么,所以我希望這里的人能夠告訴我我做錯了什么。 我將按現在的樣子擺出代碼:

let userName = "Vince";
if (userName === true){
  console.log(`Hello ${userName}`);
} else {
  console.log(`Hello!`);
}
let userQuestion = "";
if (userName === true){
  console.log(`${userName},You asked me \"${userQuestion}\"`);
} else {
  console.log(`You asked \"${userQuestion}\"`);
}

我也試過

let userName = "";
userName === true
  ? console.log(`Hello ${userName}`)
  : console.log("Hello!");
let userQuestion = "";
userName === true
  ? console.log (`${userName},You asked me \"${userQuestion}\"`)
  : console.log(`You asked \"${userQuestion}\"`);

無論我在這里做什么,它只會運行代碼的“else”部分,所以我得到這個:

你好! 你問“我會中彩票嗎” 肯定是這樣

我毫不懷疑答案是顯而易見的,而且我很密集,或者我只是誤解了一些關於真假陳述的事情,但在這個階段我非常接近於拔掉我的頭發,所以你能提供的任何幫助都會很大贊賞。

我已經改變了上述內容並嘗試了很多不同的東西。 只是有點失落。

您正在嘗試比較兩種不同的數據類型: userName是一個字符串,而true是一個 boolean 值,這就是為什么永遠不會滿足 if 條件的原因。

檢查userName的正確方法是:

    if (userName){
console.log(`Hello ${userName}`)
} else{
console.log(`Hello!`)
}

您的錯在於您正在檢查的數據類型。 你期望一個布爾值,但你給它一個字符串。

我假設您想檢查是否有名稱而不是空的?

let userName = "Vince"

if (!!userName){ //Checks if username is not empty.
console.log(`Hello ${userName}`)
} else{
console.log(`Hello!`)
}``` 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM