商品规格数组-如何组合出不通的规格。

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>),好了下面开始说正事:


const arr = [{
  "name": "color",
  "options": ["红色", "绿色"]
},
{
  "name": "size",
  "options": ["s", "m"]
}]

color和size 的key 从name 拿
如何两两组合最后输出下面格式,并希望能通用,比如3个数组的时候。

[{
 "price": '',
 "stock": '',
 "color": "红色",
 "size": "s"
},
{
 "price": '',
 "stock": '',
 "color": "红色",
 "size": "m"
},
{
 "price": '',
 "stock": '',
 "color": "绿色",
 "size": "s"
},
{
 "price": '',
 "stock": '',
 "color": "绿色",
 "size": "m"
}]
###
[{
  "name": "color",
  "options": ["红色", "绿色"]
},
{
  "name": "size",
  "options": ["s", "m"]
},
{
  "name": "price",
  "options": ["1", "2"]
}].reduce(function(d, item){
    return d.reduce(function(c, citem){
        var so = JSON.stringify(citem)
        return c.concat(item.options.map(function(option){
            var o = JSON.parse(so)
            o[item.name] = option
            return o
        }))
    }, [])
}, [{}])

郑重声明:本站部分内容转载自网络,版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们(QQ/微信153890879)修改或删除,多谢。