Javascript 背景色作为开关功能?

Javascript 背景色作为开关功能?,javascript,Javascript,这段代码没有显示错误,但不工作,有人知道为什么吗 function setStyles(){ var ya styles=document.getElementById("back"); switch (ya){ case 1:styles.style.backgroundColor='#FF0000'; break; case 2:styles.style.backgroundColor='#FF6600';

这段代码没有显示错误,但不工作,有人知道为什么吗

function setStyles(){
    var ya
    styles=document.getElementById("back");
    switch (ya){
        case 1:styles.style.backgroundColor='#FF0000';
            break;
        case 2:styles.style.backgroundColor='#FF6600';
            break;
        case 3:styles.style.backgroundColor='#FFFF66';
            break;
        case 4:styles.style.backgroundColor='#669900';
            break;
        case 5:styles.style.backgroundColor='#000066';
            break;
        case 6:styles.style.backgroundColor='#660066';
            break;
    }
}

window.onload = setStyles;

如果您定义了ya,它就会起作用:

function setStyles(ya){
  var ya;

  styles=document.getElementById("back");

  switch (ya) {
    case 1:
      styles.style.backgroundColor='#FF0000';
    break;

    case 2:
      styles.style.backgroundColor='#FF6600';
    break;

    case 3:
      styles.style.backgroundColor='#FFFF66';
    break;

    case 4:
      styles.style.backgroundColor='#669900';
    break;

    case 5:
      styles.style.backgroundColor='#000066';
    break;

    case 6:
      styles.style.backgroundColor='#660066';
    break;
  }
}

window.onload = function() {
  setStyles(1);
};

由于未定义
ya
,所有案例语句都不会匹配。尝试定义它(换句话说,给它一个值):

您还可以定义一个
default
案例,如果其他案例语句均不匹配,则将执行该案例:

...
...
case 6:
    styles.style.backgroundColor='#660066';
    break;
default:
    styles.style.backgroundColor='#000000';
...
编辑:要获取随机背景色,请执行以下操作:

var ya = Math.floor(Math.random() * 6) + 1;

您尚未指定
ya
是什么,或者它来自何处。Steen的评论几乎涵盖了这一点,但对于未来的问题,最好能解释一下你的代码应该做什么……它应该随机加载背景色,所以每次都会改变。。。。。。。我只是觉得这会很酷,但这并不是我想要的。我可以把数学。随机作为你的定义吗?
var ya = Math.floor(Math.random() * 6) + 1;