我有一個表格可以計算一個人的年齡。我寫了兩個函式。第一個進行計算,第二個回傳一些 if/else 陳述句。我對 if/else 陳述句有疑問。無論人的年齡如何,JS 總是回傳第二個 if。我不知道如何解決這個問題。
有人能幫我嗎?
HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title></title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="stile.css">
</head>
<body>
<form id="anni">
<input type="text" id="annoattuale">
<input type="text" id="nascita">
<button type="submit">Calcola</button>
</form>
<script src="script.js"></script>
</body>
</html>
JS代碼
anni.onsubmit = function (e) {
e.preventDefault()
let attualita = document.querySelector("#annoattuale").value
let nascita = document.querySelector("#nascita").value
let calcolaEta = (attuale, annodiNascita) => attuale - annodiNascita
let calcolatriceEta = calcolaEta(attualita, nascita)
condizioniEta(calcolatriceEta)
function condizioniEta (calcoloEta) {
if(calcoloEta === 18) {
console.log(`Hai ben ${calcoloEta}! Sei appena maggiorenne!`)
}
else if(calcoloEta >= 29) {
console.log(`Hai ben ${calcoloEta}! Sei un giovane piuttosto maturo`)
}
else if(calcoloEta >= 49) {
console.log(`Hai ben ${calcoloEta} e ti stai avvicinando alla vecchiaia`)
}
else if(calcoloEta >= 59) {
console.log(`Hai ben ${calcoloEta} e sei entrato nella vecchiaia`)
}
else if(calcoloEta >= 69) {
console.log(`Hai ben ${calcoloEta}... Ti potrebbe rimanere poco tempo da vivere...`)
}
else if(calcoloEta >= 89) {
console.log(`Hai ben ${calcoloEta}... La morte è quasi vicina...`)
}
}
uj5u.com熱心網友回復:
所以一個問題是變數和函式使用相同的名稱。另一個問題是你沒有用“限制”創造條件。
例如,假設年齡為 60,這個數字大于或等于 29,所以它會在這個 else if 和 will enter on it 上為真。所以你需要創建一個速率[最大值和最小值]
anni.onsubmit = function (e) {
e.preventDefault()
let attualita = document.querySelector("#annoattuale").value
let nascita = document.querySelector("#nascita").value
let calcolaEta = (attuale, annodiNascita) => attuale - annodiNascita
let calcolatriceEta = calcolaEta(attualita, nascita)
condizioniEta(calcolatriceEta)
function condizioniEta (calcoloEtaChanged) {
if(calcoloEtaChanged === 18) {
console.log(`Hai ben ${calcoloEtaChanged}! Sei appena maggiorenne!`)
}
else if(calcoloEtaChanged >= 29 && calcoloEtaChanged >= 48) {
console.log(`Hai ben ${calcoloEtaChanged}! Sei un giovane piuttosto maturo`)
}
else if(calcoloEtaChanged >= 49 && calcoloEtaChanged <= 58) {
console.log(`Hai ben ${calcoloEtaChanged} e ti stai avvicinando alla vecchiaia`)
}
else if(calcoloEtaChanged >= 59 && calcoloEtaChanged <= 68) {
console.log(`Hai ben ${calcoloEtaChanged} e sei entrato nella vecchiaia`)
}
else if(calcoloEtaChanged >= 69 && calcoloEtaChanged <= 88) {
console.log(`Hai ben ${calcoloEtaChanged}... Ti potrebbe rimanere poco tempo da vivere...`)
}
else if(calcoloEtaChanged >= 89) {
console.log(`Hai ben ${calcoloEtaChanged}... La morte è quasi vicina...`)
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/428843.html
標籤:javascript 形式 if 语句 计算器
上一篇:根據IO流的內容獲取IO
