我在寻找是否有替代方法可以编写更干净,更高效的代码。
我的目标是根据一天中的小时设置不同的值。
var hour = new Date().getHours();
var user = 'User4';
if (hour >= 4 && hour < 6) {
user = 'User1';
}
if (hour >= 6 && hour < 13) {
user = 'User2';
}
if (hour >= 13 && hour < 19) {
user = 'User3';
}
if (hour >= 19) {
user = 'User4';
}
我在网上找到了this article,但是我无法在其中实现逻辑运算符。
let values = {
a: 1,
b: 2,
};
let foo = values[ bar ] || 3;
非常感谢您的帮助!谢谢😗
最佳答案
您可以使用else if
使代码更短,更清晰
var hour = new Date().getHours();
var user;
if (hour < 4 || hour >= 19) {
user = 'User4';
} else if (hour < 6) {
user = 'User1';
} else if (hour < 13) {
user = 'User2';
} else if (hour < 19) {
user = 'User3';
}
console.log(user)
使用switch(true)
var hour = new Date().getHours();
var user;
switch(true) {
case (hour < 4 ||
hour >= 19): user = 'User4'; break;
case (hour < 6) : user = 'User1'; break;
case (hour < 13) : user = 'User2'; break;
case (hour < 19) : user = 'User3'; break;
}
console.log(user)