我的問題:通過對象的屬性標識對象的數組
我有對象的數組,這樣
var people = [
{name: 'Dan' , age: '20', favoriteColor : 'blue'},
{name: 'Bob' , age: '35', favoriteColor : 'red' },
{name: 'Frank', age: '22', favoriteColor : 'green'},
{name: 'Ed' , age: '27', favoriteColor : 'yellow'}
]
我需要能夠通過他們的名字屬性標識數組中的對象。 [請注意,數組中每個對象的名稱屬性都是唯一的]。但是,它們不是以任何特定模式排序的。所以人們[0]可能會或可能不會等同於'丹'的'名字'的對象。
我希望能夠通過舉辦它來訪問數據,這樣
people.Dan
返回對象
{age: '20', favoriteColor: 'blue'}
我覺得這應該是比較簡單的,但我真的不知道這些話來描述問題,以便能夠找到適當的解決方案。
編輯:對於任何人在將來閱讀此文,我決定採用Elliot的解決方案而不是使用underscore.js。他們都解決了這個問題,但最終只是爲了實現另一個功能。
這是一般不好的形式建議包括使用一個函數的整個庫。此外,OP正在使用Node.js,讓Underscore與Node一起工作可能會很痛苦。 –
@ElliotBonneville我不同意,首先,lodash在節點中非常容易使用,其次,這些小型實用程序庫非常有用。如果OP沒有可以做他要求的公用事業帶庫,他應該。 – dezman
我從來沒有用過underscore.js,但是我聽到很多人在網上使用過它/寫過關於它的積極反饋。不知道我是否應該走這條路,只是爲了檢查它,儘管Elliot Bonneville提供的解決方案看起來也很穩固...... – Dan