if语句出现问题

时间:2019-01-24 07:30:31

标签: javascript if-statement

我有一个简单的javascript,它将检查变量是否为空,如果为空,则为该变量分配一个随机字符串

我有一些代码,但是当变量为空而不是随机脚本时,它只会显示为空

var myId = getParameterByName('check');

// The functions

if (myId) 
{ 
    var myId = function  () 
    {
        return Math.random().toString(36).substr(2);
    }
}

预期结果是,如果check = 5,则变量myId应等于5,如果check等于null或为空,则myId变量应为随机字符串

1 个答案:

答案 0 :(得分:0)

这是您想要的吗?

var id1, id2 = 0, id3 = 'something', id4 = false;

function getParameterByName(varToCheck){
  if(varToCheck != undefined && varToCheck != null){
    return varToCheck;
  } else {
    return Math.random().toString(36).substr(2);
  }
}

console.log(getParameterByName(id1)); // Outputs a random string
console.log(getParameterByName(id2)); // Outputs 0 as it exists (is falsy but exists)
console.log(getParameterByName(id3)); // Outputs "something"
console.log(getParameterByName(id4)); // Outputs false