【发布时间】:2015-01-25 15:33:21
【问题描述】:
我正在尝试创建一个函数,该函数将迭代一个数组对象,并返回一个数组,该数组将一个数组中的每个元素连接到其他数组中的每个元素:
像这样的对象:
kitchen = {
food: [".bacon",".bananas"],
drinks: [".soda",".beer"],
apps: ['.fritters','.wings']
}
想要返回的数组:
[
".bacon.soda",".bacon.beer",
".bananas.soda",".bananas.beer",
".bacon.fritters",".bacon.wings",
".bananas.fritters",".bananas.wings",
".soda.fritters",".soda.wings",
".beer.fritters",".beer.wings"
]
我很难思考如何实现这一点。我的一个想法是创建另一个对象并创建一个哈希,其中每个数组项都成为一个属性,然后循环遍历,所以我有类似的东西:
newObj = {
".bacon": [".soda",".beer",".fritters",".wings"]
".bananas": [".soda",".beer"...etc]
etc...
}
然后循环遍历每个prop,将每个数组元素上的属性连接到一个新数组中?不知道这是否矫枉过正?
Plain JS 很好,但如果你也有一个 coffeescript 解决方案,那就太好了。
谢谢
【问题讨论】:
-
fritters、wings和bananas.wings前面没有点有什么原因吗? -
对不起,他们应该有点 - 刚刚更正了这个
标签: javascript arrays loops object