Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/88.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 可以给变量一个默认值吗_Javascript_Html - Fatal编程技术网

Javascript 可以给变量一个默认值吗

Javascript 可以给变量一个默认值吗,javascript,html,Javascript,Html,如果变量未在加载时定义,是否可以给它们一个默认值 我的脚本中有需要乘法的变量,只有它们从输入字段中获取值,所以在加载时它们都是空的 代码: 做这样的事 var conMin = document.getElementById('cMin').value || 'cMin_default'; var serLev = document.getElementById('sLev').value || 'sLev_default'; 如果左侧的值为false、0、“、null或未定义,则将为变量分

如果变量未在加载时定义,是否可以给它们一个默认值

我的脚本中有需要乘法的变量,只有它们从输入字段中获取值,所以在加载时它们都是空的

代码:

做这样的事

var conMin = document.getElementById('cMin').value || 'cMin_default'; 
var serLev = document.getElementById('sLev').value || 'sLev_default';

如果左侧的值为false、0、“、null或未定义,则将为变量分配右侧的值。

您可以尝试几种方法

if (typeof someVar === "undefined") {
    someVar = 'a default';
}  
如前所述,可以使用默认值填充输入字段

另一方面,不要直接从输入字段中提取值,而是在将它们引入并存储在变量中时进行一些验证(即变量为
var
变量,而不是
文档中的变量)。这将使您有机会检查该值是否合适,如果为空,请填写默认值,如下所示:

var conMin = '2'; //or whatever default value you want
if (document.getElementByID('cMin').value != '') {
    conMin = document.getElementByID('cMin').value;
}

你能发布你的脚本吗?我的最佳猜测是您将事情复杂化了:)为什么不为输入字段提供默认值?
code
var conMin=document.getElementById('cMin').value;var serLev=document.getElementById('sLev').value;var coreHrs=conMin*serLev*noFrames;var=1800<代码>代码
var something='defaultValue'最好将代码编辑到答案中,以便对其进行格式化。如果变量设置为非真值(如
0
),则默认情况下该值将被覆盖。@LG87-如果左侧为真,or运算符将返回左侧,否则它将返回右侧。@LG87:但解释是昆汀说的。谢谢戈登,我现在尝试了这个,只有当我尝试乘以3个变量时,它仍然返回NaN,你知道这是什么原因吗?因为它们是字符串。必须首先使用
parseInt
var conMin = '2'; //or whatever default value you want
if (document.getElementByID('cMin').value != '') {
    conMin = document.getElementByID('cMin').value;
}