2017-06-16 108 views
-2
I'm beginning javascript and i do some exercise to train my self, but i've a 
problem. 
My code had to ask the time to the user and give the time one seconde after 
the time entered. 
And my code shows my always "temps erroné" (that mean ~wrong time). 
Here's my code : 

這讓用戶的時間我的代碼不工作

var hour = Number(prompt("heure actuelle?")); 
var minute = Number(prompt("minute actuelle?")); 
var seconde = Number(prompt("seconde actuelle?")); 

//這個功能就像是一個控制,如果輸入的時間是錯誤的功能 是假

function isTimeValid(hour, minute, seconde){ 
    if((hour >= 24) || (hour < 0)) { 
    return false 
    } 
    if((minute < 0) || (minute >= 60)) { 
    return false 
    } 
    if((seconde >= 60) || (seconde < 0)) { 
    return false 

    } 
    else { 
    return true 
    } 
} 

此功能修改時間

function displayNextHour(hour, minute, seconde){ 
if((seconde >= 0) && (seconde < 59)) { 
    seconde++; 
} else if(seconde === 59) { 
    seconde = 0 
    minute++ 
    } 
if(minute === 60) { 
    minute = 0 
    hour++ 
    } 
if(hour === 24) { 
    hour = 0 
    } 
var time = "Il est " + hour + "h " + minute + "m " + seconde + "s"; 
return time 
} 

最後一部分午餐功能

if(isTimeValid()){ 
console.log(displayNextHour(hour, minute, seconde)) 
}else{ 
    console.log("temps erroné") 
} 

所以,如果你能幫助我,這將是對我很大的幫助,我的JavaScript學習:D

+3

請考慮選擇相關標題以及使用相關標籤。 – Berger

+2

Java!= javascript –

回答

0

您沒有將參數傳遞給函數

更換

if(isTimeValid()) 

if(isTimeValid(hour, minute, seconde)) 
+0

謝謝man:D這是一個愚蠢的錯誤^^ 我已經讀過我的代碼,但我沒有看到它x) –

+0

歡迎))愚蠢的錯誤導致最大的問題) )我做了很多次。請將答案標記爲已接受。 –

0

您沒有通過參數,像邁克說,並沒有在你的代碼中的另一個錯誤。 您可以在「isTimeValid」中控制小時數(= 24)和分鐘數(= 60),但下一個 函數在控制此參數時存在錯誤。下面的代碼解決了它。

function displayNextHour(hour, minute, seconde){ 
if((seconde >= 0) && (seconde < 59)) { 
    seconde++; 
} else if(seconde === 59) { 
    seconde = 0 
    minute++ 
    } 
if(minute === 59) { 
    minute = 0 
    hour++ 
    } 
if(hour === 23) { 
    hour = 0 
    } 
var time = "Il est " + hour + "h " + minute + "m " + seconde + "s"; 
return time 
}