如何在 JS 变量中将 "img src=" 设置为 URL?

How can I set an "img src=" to URL in JS variable?

我有一个 if-else 语句,它根据一天中的时间提供各种图像 URL,每个 "else" 有一个图像 URL。我希望我可以有一个 img src,其中源从 if-else 语句加载,本质上是为一天中的不同时间加载不同的图片。

我为一天中的不同时间设置了变量,然后是从中选择的 if-else 语句。以下是最小可重现样本:

<body onload="load()">
    <p>Test:</p>
    <img src="https://i.imgur.com/4LtRreH.png" id="image" name="image"/>

<script type="text/javascript">
 const now = new Date();
 const slot1 = now.getHours() === 14;
 const slot2 = now.getHours() === 15;

 const imageOne = "https://i.imgur.com/5IaY11U.png";
 const imageTwo = "https://i.imgur.com/ANdRs50.png";

        function load() {
        document.getElementById('image').src= imgPick();
        }

        function imgPick() {
            if (slot1) {
            imageOne;
            } else if (slot2) {
            imageTwo;
            }
        };
</script>

</body>

为简单起见,我只是添加了发帖时的广告位。

我的目标是将正文中的 img src 替换为 if-else 语句中的 URL。因此,由于我是在 2:32pm 上发布的,因此它应该正在加载 imageOne。现在,它一直默认为 中给出的 link。

如果有人能指出正确的方向,我将不胜感激。

只是return值

function imgPick() {
  if (slot1) {
    return imageOne;
  } else if (slot2) {
    return imageTwo;
  }
}
function imgPick() {

 const now = new Date();
 const slot1 = now.getHours() === 14;
 const slot2 = now.getHours() === 15;

 const imageOne = "https://i.imgur.com/5IaY11U.png";
 const imageTwo = "https://i.imgur.com/ANdRs50.png";

        if (slot1) {
           return imageOne;
        } else if (slot2) {
           return imageTwo;
        }

最好将常量输入到函数中,这样一旦函数执行,它们就会被销毁,这样您就不会在全局范围内浪费内存。