微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何显示索引数组的特殊词?

如何解决如何显示索引数组的特殊词?

我还是新手,面临着一个挑战。

用户想要找出日期时间时,我想在div显示特定的单词 例如:

let today = new Date;

let time = today.getHours()
let hours= [
    'work','work','fun',]
let hoursName = hours[today.getHours()];
console.log(hoursName);

我的代码有效,但我认为有点不正确。 如果我的数组的长度,将来会有 999 个索引吗?为了填充每个索引,我会花很多时间,是否有可能以某种方式将 (if,else if) 添加到数组中?

解决方法

您可以创建一个数组,其中包含“fun”值的开始和结束索引。就像问题中的 24 示例一样,它可以创建如下:

var funRanges = [[7,7],[15,17],[21,23]]; // [[Start,end]] (Both inclusive)

然后使用函数,您可以检查您的小时值是否在任何范围内。如下图:

var funRanges = [[7,end]] (Both inclusive)

var getHourName = (hour) => funRanges.some(x => hour >= x[0] && hour <= x[1]) ? 'fun': 'work';
console.log(getHourName(1))
// work

enter image description here

将来,您只需将新范围添加到 rangeArray 中,代码仍然可以正常工作。

,

您可以维护数组数组,每个子数组都是“最后一个索引”和“项目类型”的窗口。

在下面同
0-6 --> 工作
7-7 --> 好玩
8-23 --> 电影

const get = (index) => {
  // array of array,each array is "last index" and "type"
  const hours = [
    [6,"work"],[7,"fun"],[23,"movie"],];
  const slot = hours.find((arr) => arr[0] >= index);
  return slot[1];
};

console.log(get(5));
console.log(get(7));
console.log(get(15));

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。