gpt4 book ai didi

javascript - 简单的时区时钟功能陷入错误状态,我不知道为什么

转载 作者:行者123 更新时间:2023-12-02 16:05:59 26 4
gpt4 key购买 nike

我实现了一个简单的时区时钟,它不会根据不同的时区改变时间,经过几次调试后我发现它陷入了错误的“if”条件。代码如下:

var zone = "ho";

alert("1"+zone);
var ft;
var dt = new Date();
var def = dt.getTimezoneOffset()/60;
var gmt = (dt.getHours() + def);
var ending = ":" + IfZero(dt.getMinutes()) + ":" + IfZero(dt.getSeconds());

alert("2"+zone);

if(zone = "local"){
ft = (IfZero(dt.getHours()) + ":" + IfZero(dt.getMinutes()) + ":" + IfZero(dt.getSeconds()));
alert("firelocal");
}else if(zone = "GMT"){
var _GMT =check24(((gmt) > 24) ? ((gmt) - 24) : (gmt));
ft = (IfZero(_GMT) + ":" + IfZero(dt.getMinutes()) + ":" + IfZero(dt.getSeconds()));
}else if(zone = "eniw"){
var eniw =check24(((gmt + (24-12)) > 24) ? ((gmt + (24-12)) - 24) : (gmt + (24-12)));
ft = (IfZero(eniw) + ending);
}else if (zone = "ho"){
var ho =check24(((gmt + 8) > 24) ? ((gmt + 8) - 24) : (gmt + 8));
ft = (IfZero(ho) + ending);
alert("fireho");
}else{
ft = "undefined";
}

alert("3"+zone);

document.getElementById("worldclock").innerHTML = ft;
setTimeout("worldclock()", 5000);

这是警报的输出:

1ho
2ho
firelocal
3local

我现在真的很困惑,因为我不确定该函数如何陷入 if(zone = "local") 条件,即使我出于调试目的显式初始化了 zone="ho"。

有人可以告诉我我的功能出了什么问题吗?抱歉,如果这个问题很愚蠢,我刚刚开始学习 javascript。

最佳答案

你有:

if (zone = "local")

这使得zone采用“local”的值。更改为:

if (zone === "local")

关于javascript - 简单的时区时钟功能陷入错误状态,我不知道为什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30742130/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com