javascript - 使用两个值作为一个值的键

标签 javascript arrays json maps

如何使用 2 个值作为 Javascript 中一个值的键?我正在为剧院客户编写一个票务系统,并且需要能够使用日周组合来查找 url 的外部 ID。

每个节目可以在给定的一天(周一、周二、周三等)运行,但也可以在特定的“运行周”期间运行,例如第一、第二、第三、第四。因此,节目可能会在运行的第二周的星期二运行。并且日期和星期是唯一的,但需要查找该值并选择合适的链接网址。 url 中我需要担心的唯一部分是 id,它是数字,每个组合都会有一个像 https://example.com/52 这样的链接。 , https://example.com/53 , https://example.com/54等等

那么我如何使用两个值来充当一个结果的键呢?再次,我试图找到一种方法,其中 Day-2 + Week-2 => id-54,或 day-4 + week-3 => id-63

可能的选项是:

  • 嵌套 if 语句(困惑、笨拙,我不想这样做。)
  • 每天一个数组。因此,星期二(第 2 天)将具有诸如 ['week1', 'week2', 'week3'] 之类的周值,并且通过每天的 if 语句,我只需要查找正确的周。 (更好,但可以改进)。
  • 并且必须有更好的方法来做到这一点。有什么想法吗?

最佳答案

您可以将数据存储在嵌套字典中以便稍后轻松访问,如下所示

// Initialize days dictionary 
var days= {
             Monday: {},
             Tuesday: {},
             Wednesday: {},
             Thursday: {},
             Friday: {},
             Saturday: {},
             Sunday: {}
          };

// Then store 
days["Tuesday"]["Week-4"] = "id-54";
days["Thursday"]["Week-3"] = "id-63";

当您想访问它们时,只需使用

days["Thursday"]["Week-3"] 

用于访问Thursday-Week3 id等...

关于javascript - 使用两个值作为一个值的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57435756/

相关文章:

javascript - 如何循环获取从 config.json 文件获取的值的数量

mysql - JSON/MySQL : list indices must be integers or slices, 不是 str

json - 反序列化 JSON swift 4.2

javascript - 如何在选择元素的输入框中仅显示名称,而在下拉列表中显示名称和号码

javascript - jQuery addClass 方法

arrays - 为什么 required 关键字 init 在通用 Array where 子句中是强制性的?

arrays - 设计一个使用散列并支持比较的数据结构

javascript - PHP:获取关联数组中的最后一个元素

javascript - jQuery 数据表发送 JSON 搜索参数

javascript - 正则表达式 - 匹配词组