Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript:返回NaN_Javascript_Nan - Fatal编程技术网

Javascript:返回NaN

Javascript:返回NaN,javascript,nan,Javascript,Nan,因为我对编程非常陌生,所以我决定做一些Javascript练习,比如这个“分到秒”转换器。 如果我理解正确,“m”不是一个数字,因为它没有在任何地方声明。 “m”用户输入的分钟数。但是,如果我给'm'一个值,例如const m='0',用户将无法更改'm'的值。 如何消除NaN错误,但仍然允许用户插入数字? 此外,这是进行此练习的好方法/正确方法吗 const convertMinutes=document.getElementById'convertButton'; const m=docu

因为我对编程非常陌生,所以我决定做一些Javascript练习,比如这个“分到秒”转换器。 如果我理解正确,“m”不是一个数字,因为它没有在任何地方声明。 “m”用户输入的分钟数。但是,如果我给'm'一个值,例如const m='0',用户将无法更改'm'的值。 如何消除NaN错误,但仍然允许用户插入数字? 此外,这是进行此练习的好方法/正确方法吗

const convertMinutes=document.getElementById'convertButton'; const m=document.getElementById'input'; convertMinutes.addEventListener'click',convert; 函数转换器{ 返回m*60; } document.getElementById'seconds'。innerHTML=convert+'seconds'; 文件 把分钟转换成秒! 转换
从m.value获取输入元素内部的值

document.getElementById'seconds'。innerHTML=convertm.value+'seconds';
从m.value获取输入元素内部的值

document.getElementById'seconds'。innerHTML=convertm.value+'seconds';
您需要使用id输入读取元素的值,并将其解析为整数或下面的浮点,我们将其解析为整数。欲了解更多信息,请提供详细信息。请检查以下代码片段:

const convertMinutes=document.getElementById'convertButton'; //在这里,您可以使用id输入获得对DOM元素的引用 const input=document.getElementById'input'; //在这里,您使用id convertButton为DOM元素上的click事件注册一个事件处理程序 convertMinutes.addEventListener'click',convert; 函数转换{ //这里将输入解析为Int,然后将其乘以60 var seconds=parseIntinput.value,10*60; //在这里,您将实际值设置为id为seconds的DOM元素 document.getElementById'seconds'。innerHTML=seconds+'seconds'; } 文件 把分钟转换成秒! 转换
您需要使用id输入读取元素的值,并将其解析为整数或下面的浮点,我们将其解析为整数。欲了解更多信息,请提供详细信息。请检查以下代码片段:

const convertMinutes=document.getElementById'convertButton'; //在这里,您可以使用id输入获得对DOM元素的引用 const input=document.getElementById'input'; //在这里,您使用id convertButton为DOM元素上的click事件注册一个事件处理程序 convertMinutes.addEventListener'click',convert; 函数转换{ //这里将输入解析为Int,然后将其乘以60 var seconds=parseIntinput.value,10*60; //在这里,您将实际值设置为id为seconds的DOM元素 document.getElementById'seconds'。innerHTML=seconds+'seconds'; } 文件 把分钟转换成秒! 转换 试试这个

const convertMinutes=document.getElementById'convertButton'; const m=document.getElementById'input'; convertMinutes.addEventListener'click',convert; 函数转换{ 常数秒=m.值*60 document.getElementById'seconds'。innerHTML=`${seconds}seconds`; } 文件 把分钟转换成秒! 转换 试试这个

const convertMinutes=document.getElementById'convertButton'; const m=document.getElementById'input'; convertMinutes.addEventListener'click',convert; 函数转换{ 常数秒=m.值*60 document.getElementById'seconds'。innerHTML=`${seconds}seconds`; } 文件 把分钟转换成秒! 转换
因此,您需要将其分解为两个不同的操作。首先,您有convertMinutesToSeconds函数。第二,你有你的点击操作。单击Convert按钮时,您希望它使用输入用户输入的值运行ConvertMinutesSeconds,并使用该数字更新DOM

因此,这是一个以这种方式构建代码的问题。你现在所有的零件都在那里,只是没有正确组装

//转换函数 函数转换器{ 返回m*60; } //单击处理程序-运行转换函数,将结果附加到DOM。 功能手柄{ const m=document.getElementById'input'; const minutesValue=m.valueAsNumber; const seconds=convertminutesValue; document.getElementById'seconds'。innerHTML=seconds+'seconds'; } //将clickHandler附加到按钮 const convertMinutes=document.getElementById'convertButton'; convertMinutes.addEventListener'click',handleClick; 文件 把分钟转换成秒! 转换
因此,您需要将其分解为两个不同的操作。首先,您有convertMinutesToSeconds函数。第二,你有你的点击操作。单击t时 单击Convert按钮,您希望它使用输入用户输入的值运行ConvertMinutesSeconds,并使用该数字更新DOM

因此,这是一个以这种方式构建代码的问题。你现在所有的零件都在那里,只是没有正确组装

//转换函数 函数转换器{ 返回m*60; } //单击处理程序-运行转换函数,将结果附加到DOM。 功能手柄{ const m=document.getElementById'input'; const minutesValue=m.valueAsNumber; const seconds=convertminutesValue; document.getElementById'seconds'。innerHTML=seconds+'seconds'; } //将clickHandler附加到按钮 const convertMinutes=document.getElementById'convertButton'; convertMinutes.addEventListener'click',handleClick; 文件 把分钟转换成秒! 转换
这是正确的——因为您已经附加了一个事件处理程序,所以不需要像在js的最后一行中那样显式地调用convert,只需将该部分代码移到事件处理程序函数中即可。有关详细信息,请参见代码中的注释:

//创建一些对DOM元素的引用 const convertMinutes=document.getElementById'convertButton'; const m=document.getElementById'input'; const s=document.getElementById'seconds'; //附加事件侦听器 convertMinutes.addEventListener'click',convert; //当addEventListener触发函数时,会向其传递一个事件参数,即:e。 函数转换器{ //只需检查用户在计算前没有将m文本输入留空 如果m.value{ //进行计算并设置DOM元素的innerHTML的值 s、 innerHTML=`${m.value*60}秒`; } } 文件 把分钟转换成秒! 转换
这是正确的——因为您已经附加了一个事件处理程序,所以不需要像在js的最后一行中那样显式地调用convert,只需将该部分代码移到事件处理程序函数中即可。有关详细信息,请参见代码中的注释:

//创建一些对DOM元素的引用 const convertMinutes=document.getElementById'convertButton'; const m=document.getElementById'input'; const s=document.getElementById'seconds'; //附加事件侦听器 convertMinutes.addEventListener'click',convert; //当addEventListener触发函数时,会向其传递一个事件参数,即:e。 函数转换器{ //只需检查用户在计算前没有将m文本输入留空 如果m.value{ //进行计算并设置DOM元素的innerHTML的值 s、 innerHTML=`${m.value*60}秒`; } } 文件 把分钟转换成秒! 转换

您也没有将任何内容传递到convert。您的事件侦听器单击处理程序调用了您的函数,但没有对返回值执行任何操作。您是否只是想要一个不是NaN的默认值?另外,为什么这里所有的答案都被否决了?@Jacob有人想惩罚所有回答他们认为应该关闭的问题的回答者。你也没有将任何内容传递到convert。你的事件侦听器click handler调用你的函数,但没有对返回值做任何操作。你只是想得到一个默认值吗NaN不是吗?还有,为什么这里所有的答案都被否决了?@Jacob有人想惩罚所有回答他们认为应该关闭的问题的人。谢谢你简单的解决方案和精彩的解释!显然我甚至不需要在这里使用return。@Appelpeer15非常欢迎您!我很高兴我帮了忙@如果你留下任何评论来解释你投否决票的原因,那将是很有帮助的。只是投反对票而不留下任何评论对任何人都没有帮助。@Christos很确定这只是一些恶棍。对每一个答案都投了反对票,没有任何评论。谢谢你简单的解决方案和精彩的解释!显然我甚至不需要在这里使用return。@Appelpeer15非常欢迎您!我很高兴我帮了忙@如果你留下任何评论来解释你投否决票的原因,那将是很有帮助的。只是投反对票而不留下任何评论对任何人都没有帮助。@Christos很确定这只是一些恶棍。否决了每一个答案,没有任何评论。