簡體   English   中英

如何顯示索引數組的特殊詞?

[英]How can I display special word for index array?

我還是新手,面臨一個挑戰。

當用戶想要找出日期時間時,我想在 < div > 中顯示特定的單詞,例如:

let today = new Date;

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

我的代碼有效,但我認為它有點不正確 如果我的數組的長度,將來會有 999 個索引嗎? 為了填充每個索引,我會花很多時間,是否有可能以某種方式將( if,else if )添加到數組中?

您可以創建一個數組,其中包含“有趣”值的開始和結束索引。 就像問題中的 24 示例一樣,它可以創建如下:

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

然后使用 function,您可以檢查您的小時值是否在任何范圍內。 如下所示:

 var funRanges = [[7, 7], [15, 17], [21, 23]]; // [[Start, end]] (Both inclusive) var getHourName = (hour) => funRanges.some(x => hour >= x[0] && hour <= x[1])? 'fun': 'work'; console.log(getHourName(1)) // work

在此處輸入圖像描述

將來,您只需將新范圍添加到您的 rangeArray 中,代碼仍然可以正常工作。

您可以維護 arrays 數組,每個子數組是“最后一個索引”和“項目類型”的 window。

在以下同
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));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM