文档章节

更新仓库库存

万城
 万城
发布于 2017/09/02 12:35
字数 339
阅读 4
收藏 0

function updateInventory(arr1, arr2) {
    // 请保证你的代码考虑到所有情况
  //思路:把第一个数组里的所有第二项的值用来匹配第二个数组里的第二项的值,如果出现过就增加该数组里的第一项,没出现过就push过去
    var ar2 = [];    //用一个数组来存放枚举出来的arr1的素有第二项的值
            for (var i in arr1){
                ar2.push(arr1[i][1]);    //把arr1所有的第二项的值都存到ar2里用来匹配
            }
            for (var o in arr2){    //把arr2也枚举出来
                if (ar2.indexOf(arr2[o][1]) !== -1){    //如果arr2里某个数组第二项的值在数组1里出现过,则把arr1和arr2里该数组的第一项相加
                    arr1[ar2.indexOf(arr2[o][1])][0] += arr2[o][0];    //用indexOf获取到该项出现的位置,然后用数组定位到该项
                }else 
                  {
                    arr1.push(arr2[o]);  //没出现过就push到数组1里
                  }
            }
            arr1 = arr1.sort(function (a, b) {    //用sort来排序,不用arr1 = 也行,因为sort会改变原数组,参数0是字母的位置
                return a[1].charCodeAt(0) - b[1].charCodeAt(0);
            });
    return arr1;
}

// 仓库库存示例
var curInv = [
    [21, "Bowling Ball"],
    [2, "Dirty Sock"],
    [1, "Hair Pin"],
    [5, "Microphone"]
];

var newInv = [
    [2, "Hair Pin"],
    [3, "Half-Eaten Apple"],
    [67, "Bowling Ball"],
    [7, "Toothpaste"]
];

updateInventory([[21, "Bowling Ball"], [2, "Dirty Sock"], [1, "Hair Pin"], [5, "Microphone"]], [[2, "Hair Pin"], [3, "Half-Eaten Apple"], [67, "Bowling Ball"], [7, "Toothpaste"]]);
 

© 著作权归作者所有

上一篇: 彻底去重
下一篇: 收银程序
万城
粉丝 1
博文 50
码字总数 99199
作品 0
青岛
前端工程师
私信 提问
干货 | 企业自主可控免费开源ERP:Odoo采购管理解决方案

供应商基础资料 1、 所有的供应商基础资料,Odoo开账启用时,期初的客户数据如果大于200条,可以批量导入; 2、 点“采购/采购/供应商”菜单可以查看、编辑修改、搜索所有的供应商基础资料;...

it专家老杨
03/08
0
0
业务确定问题

=== 库存业务(不区分仓库) === 1) 设备入库, 生成入库记录, 同时更新库存 2) 有客户订购时, 生成对应的出库记录 , 更新库存 === 订单产品业务 === 1) 订单 对应 多条 订单明细 2) 订单明...

hewep
2015/06/16
0
1
iMS 网络营销管理系统介绍

特点  多点多仓库跨区域办公。  随时查询库存报价、库存预警、细化到批次,精准管理。  实时同步数据订单。  用户权限自主决定、安全性高。  无需it维护人员、实施成本低。 方便,...

fufudao
2016/01/18
5
0
关于CRM库存初始化的一点小总结

日前,有客户在使用CRM管理库存的过程中反馈了一个关于库存台账的bug(姑且称为bug吧)。例如:12月份通过进货单,采购了10台笔记本。完成产品入库。那么笔记本库存台账: 期初库存数量为0、期间...

ssdcrm
2014/12/15
0
0
真维斯库存管理系统 --JWMS

JWMS(JeansWest Management System) 它是一个以java为 平台开发的一款小巧轻便的真维斯库存管理系统 特点: #跨平台,支持windows和linux # 多数据库支持(mysql,mssql,oracle) #轻便小巧...

匿名
2010/03/08
13.8K
0

没有更多内容

加载失败,请刷新页面

加载更多

读书replay《maven实战》.1.20190526

前情提要 maven这个工具用了好久了,但是一直都用的迷迷糊糊的,没有对它进行过系统性的学习,只是知道一些常用的功能怎么实现,所以20190516这一天我从JD购买了徐晓斌老师所著的《maven实战...

wanxiangming
27分钟前
0
0
真实项目案例实战——【状态设计模式】使用场景

什么是状态模式 状态模式允许一个对象在其内部状态改变的时候改变其行为。这个对象看上去就像是改变了它的类一样。 状态模式应用场景 1.一个对象的行为取决于它的状态,并且它必须在运行时刻根...

须臾之余
33分钟前
0
0
Java 实现把字符串转换成整数【底层实现】

https://blog.csdn.net/zl18310999566/article/details/80263396

qimh
37分钟前
0
0
IDEA的debugger

1、win下节省内存空间 3、条件断点

一只小青蛙
47分钟前
3
0
炸!亿级数据DB秒级平滑扩容

一步一步,娓娓道来。 一般来说,并发量大,吞吐量大的互联网分层架构是怎么样的? 数据库上层都有一个微服务,服务层记录“业务库”与“数据库实例配置”的映射关系,通过数据库连接池向数据...

编程SHA
53分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部