Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Collections 集合id:按索引还是按值?_Collections - Fatal编程技术网

Collections 集合id:按索引还是按值?

Collections 集合id:按索引还是按值?,collections,Collections,也许我不知道该搜索什么,但我尝试使用[json]id作为索引或值 我很好奇其他人的经验告诉了我什么。我有许多rest调用从数据库返回JSON数据。在这些值中,有唯一的标识符。我的问题是, 最好是将ID作为项上的字段提供,还是作为项上的索引提供。例如: { dataByValue: [ { id: 1, data: "What's up?", otherData: "hi" }, { id: 2, data: 123, otherData: "hi" }

也许我不知道该搜索什么,但我尝试使用[json]id作为索引或值

我很好奇其他人的经验告诉了我什么。我有许多rest调用从数据库返回JSON数据。在这些值中,有唯一的标识符。我的问题是,

最好是将ID作为项上的字段提供,还是作为项上的索引提供。例如:

{
    dataByValue: [
        { id: 1, data: "What's up?", otherData: "hi" },
        { id: 2, data: 123, otherData: "hi" }
    ],
    dataByIndex: {
        1: { data: "What's up?", otherData: "hi" },
        2: { data: 123, otherData: "hi" }
    },
    orMaybeBoth: {
        1: { id: 1, data: "What's up?", otherData: "hi" },
        2: { id: 2, data: 123, otherData: "hi" }
    }
}
我知道这不是有效的JSON,但你明白了

我想知道为什么每种方法都是有益的: 按值循环可能更容易,尤其是在没有简单方法处理对象上的变量键的平台上


通过索引,如果您有ID,可以快速访问数据。

这个问题与JSON无关。这是一个如何构造数据的问题,这些数据在其生命周期的某个时刻恰好被序列化为JSON。答案将具体针对所讨论的数据及其用途。将提供许多意见,但没有一个是客观正确的。你需要更具体地了解你正在解决的问题。从最广泛的意义上讲,第一种是集合的更常见表示,尤其是在REST上下文中。但这取决于实际情况。