有如下一个数组
[
{"id": 100006, "value": "40,1666"},
{"id": 100017, "value": "112,113"},
]
期望输出如下结果
['10006:40,100017:112',
'10006:40,100017:113',
'10006:1666,100017:112',
'10006:1666,100017:113',
]
亦或者输入三个或者N个数组
[
{"id": 100006, "value": "40,1666"},
{"id": 100017, "value": "112,113"},
{"id": 100018, "value": "1,2"},
]
能够输出
['10006:40,100017:112',
'10006:40,100017:113',
'10006:40,100018:1',
'10006:40,100018:2',
'10006:1666,100017:112',
'10006:1666,100017:113',
'10006:1666,100018:1',
'10006:1666,100018:2',
'100017:112,100018:1',
'100017:112,100018:2',
'100017:113,100018:1',
'100017:113,100018:2',
]
Wie implementiert man diese Funktion?
Zusätzlich: Es ist am besten, den entsprechenden Wert unabhängig von der Länge des Eingabearrays korrekt auszugeben (alle Werte im Array werden einmal abgeglichen) Einige Antworten haben feste Werte von 0 und 1. Das hoffen wir ist nicht der Fall.
A
ScreenShot
核心就是:
第一层遍历数组
第二层遍历对象属性
试了一下仿“纯函数式”的代码:
两两相配(这是答主想要的效果):
另外,附加上NN相配: