我在Parse .com數據庫中有一個對象,可以接收大拇指投票。我想跟蹤哪些用戶提供了大拇指,以防止同一用戶再次執行此操作。我正在考慮將一個字段添加到名爲「選民」的對象中,該字段將包含投票用戶列表。使用數組或JSON來跟蹤唯一列表
這應該是一個用戶名或帶有鍵作爲用戶名的JSON數組嗎?
爲什麼我會使用一個數組,如果我可以使用json映射並對鍵進行O(1)查找?
ie object.voters[uername] = undefined then no votes
?
我在Parse .com數據庫中有一個對象,可以接收大拇指投票。我想跟蹤哪些用戶提供了大拇指,以防止同一用戶再次執行此操作。我正在考慮將一個字段添加到名爲「選民」的對象中,該字段將包含投票用戶列表。使用數組或JSON來跟蹤唯一列表
這應該是一個用戶名或帶有鍵作爲用戶名的JSON數組嗎?
爲什麼我會使用一個數組,如果我可以使用json映射並對鍵進行O(1)查找?
ie object.voters[uername] = undefined then no votes
?
如果您只需要選舉人的姓名,請使用數組。
如果您需要更多信息而不僅僅是名稱,請使用Json。
爲什麼如果你只需要名稱只是使選民姓名的數組首先將是容易的第二它會更快的過程。
,但如果你需要像 voter={"name":"foo","age":"25"}
正如你看到的,我們可以使用powerof JSON保存多個信息關於一個用戶,反正每個選民必須在單個陣列內,這樣你就可以對他們進行迭代
UPDATE --- 查找數組中名稱的索引只需使用array.indexOf("the name")
這將返回的是名稱的索引號,如果名稱不存在,則它將返回-1,因此簡單的if else可以處理此操作
UPDATE ---
和here我發現了一個性能測試來比較哪個更快查找whitin數組或對象,似乎數組仍然贏得了這一點。
而且here是另一個源讀取
是的,但是這意味着我想找到一個用戶需要搜索的陣列,而在JSON我可以立即使用該密鑰訪問該項目每一次? – rex
@ ArmenSafieh-Garabedian im更新問題 – nikoss
我關心的不是代碼,我關心數組上的查找時間(如何indexof內部工作?)相比,一個關鍵的查找 – rex