2014-05-22 22 views
-2

我有一個對象,其中有重複的實例。而我使用大小方法檢查對象的長度使用下劃線它顯示錯誤的值。它不包括重複的實例。下劃線大小方法不包括重複鍵值對

如何計算包括重複或如何刪除重複鍵val對?

這裏是樣本:

oldData = {id: null, currency: "japan", currency: "indian"}; 

console.log(_.size(oldData)) //it gives me 2 but I have 3 

回答

1

oldData將只有兩個鍵。重複密鑰將被替換爲最後一個。 嘗試在任何JavaScript控制檯中運行代碼,並直接檢查oldData的值。

> var oldData = {id: null, currency: "japan", currency: "indian"}; 
    undefined 

> oldData 
    Object {id: null, currency: "indian"} 

正如你所看到的,oldData只有一個currency關鍵。這就是爲什麼_.size(oldData)返回2而不是3.

0

大小沒有錯誤。

一個對象就像一組鍵。你可以不是在一個集合中有兩個相同的成員。

這就像聲明2個具有相同名稱的變量一樣。

  • 首先使用你設置一個值,你的變量
  • 那麼你將只是簡單地覆蓋它的值
  • 在任何情況下,您都不會創建第二個具有相同名稱的變量,只能通過它們的值進行區分。

一個對象的行爲非常像變量集或像名稱空間一樣。