问题描述
|
如果未在加载时定义变量,是否可以给它们提供默认值?
我的脚本中有一些变量需要相乘,只有它们从输入字段中获取值,因此在加载时它们都为空...
码:
var conMin = document.getElementById(\'cMin\').value;
var serLev = document.getElementById(\'sLev\').value;
var coreHrs = conMin * serLev * noFrames;
var noFrames = 1800
解决方法
做这样的事情
var conMin = document.getElementById(\'cMin\').value || \'cMin_default\';
var serLev = document.getElementById(\'sLev\').value || \'sLev_default\';
如果左侧的值为false,0,\“ \”,null或undefined,则将为变量分配右侧的值。
,if (typeof someVar === \"undefined\") {
someVar = \'a default\';
}
,您可以尝试几件事。
正如已经建议的那样,您可以使用默认值填充输入字段,这是一种可能。
另外,与其直接从输入字段中提取值,还不如直接将其输入并存储在变量中(即,如var
变量中的变量,而不是document
中的变量)进行一些验证。这将使您有机会检查该值是否合适以及是否为空,请填写默认值,如下所示:
var conMin = \'2\'; //or whatever default value you want
if (document.getElementByID(\'cMin\').value != \'\') {
conMin = document.getElementByID(\'cMin\').value;
}