网页商品SKU(规格)选择

什么是sku

维基百科如下 最小存货单位(Stock Keeping Unit) 在连锁零售门店中有时称单品为一个SKU,定义为保存库存控制的最小可用单位,例如
例如: iPhone有规格有:颜色【红、金、黑】,内存大小【32g、64g、128g】 红色+32g就是一个sku,当然还可以分的更细

后台数据如下:(表1)

颜色内存屏幕大小库存
红色-a116G-b14.7-c1100
金色-a232G-b25.1-c2110
黑色-a364G-b34.7120
蓝色-a4128G-b44.7130

对上面的数据排列组合得到,所有库存的sku

选项卡则为:(表2)

颜色选择项
颜色红色金色黑色蓝色
内存16G32G64G128G
屏幕4.75.1



产品要求只用有库存的商品按钮才显示可选样式


这里写图片描述

选项卡

把以选择sku 存放到一个数组中 如:selectSku=[a1,b1,c1]

方案1:

把所有规格排列组合生成一个map,如:

skuMap={
    a1:100,
    b1:100,
    c1:220,

}

优点是只需要运算一次,后期只需要通过key查找就可以了,但是初始化运算量比较大

方案2:

每次选择重新计算当前选项的库存,如:

selectSku=[a1,b1,c1];//已选择规格
//如果想知道c2是否可以选择,则需要获取 key=a1b1c2这个sku的库存
//其他类推

这里非常感谢网友的一片文章,写个非常仔细。有兴趣的可以参考
http://git.shepherdwind.com/sku-search-algorithm.html

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值