2017-06-16 106 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 
}