繁体   English   中英

我不理解代码中的语法错误

[英]I don't understand the syntax error in my code

我的文本编辑器不喜欢这段代码,我不确定为什么

<script type="text/javascript">
function randmg(){
var img = [
      "banner1.png",
      "banner2.png",
      "banner3.png",
      "banner4.png"
]
var maxImg = img.length;
var randNum = Math.floor(Math.random()*maxImg)
return img[randNum]
}
</script>

它说错误在第四行“ var img-[”

我以为我是var在数组下的使用/放置,但我无法修复它

改成这个

function randmg(){
var img = ["banner1.png","banner2.png","banner3.png","banner4.png"];
var maxImg = img.length;
var randNum = Math.floor(Math.random()*maxImg);
return img[randNum];
}

但是仍然有同样的问题

是的,您需要在该数组的末尾添加分号。

var img = [
      "banner1.png",
      "banner2.png",
      "banner3.png",
      "banner4.png"
];

您应该有分号,并且每个语句的结尾:

 function randmg(){
      var img = [
            "banner1.png",
            "banner2.png",
            "banner3.png",
            "banner4.png"
      ]; //here
      var maxImg = img.length;
      var randNum = Math.floor(Math.random()*maxImg); //here
      return img[randNum]; //here
 }

尽管由于遗留原因并不需要它们,但强烈建议使用它们。 在这种情况下,代码将运行,但是没有理由省略它们。

考虑以下重写:

var randmg = (function () {
    var img = [
        'banner1.png',
        'banner2.png',
        'banner3.png',
        'banner4.png'
    ];

    return function () {
        return img[ Math.floor( Math.random() * img.length ) ];
    };
})();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM