文档章节

更新仓库库存

万城
 万城
发布于 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
青岛
前端工程师
私信 提问
业务确定问题

=== 库存业务(不区分仓库) === 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
OFBiz + Opentaps 仓储设施 十. 提货

十. 提货 (一) 什么是提货单 提货单是一个报表,他显示了需要从仓储设施提前外发货物的列表。他们根据仓储设施中货物的位置来排序,这样“提取器”就能遍历仓储设施并以提货单相同的顺序来提...

Jason
2012/04/04
0
0
真维斯库存管理系统 --JWMS

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

匿名
2010/03/08
13.8K
0

没有更多内容

加载失败,请刷新页面

加载更多

EOS docker开发环境

使用eos docker镜像是部署本地EOS开发环境的最轻松愉快的方法。使用官方提供的eos docker镜像,你可以快速建立一个eos开发环境,可以迅速启动开发节点和钱包服务器、创建账户、编写智能合约....

汇智网教程
今天
12
0
《唐史原来超有趣》的读后感优秀范文3700字

《唐史原来超有趣》的读后感优秀范文3700字: 作者:花若离。我今天分享的内容《唐史原来超有趣》这本书的读后感,我将这本书看了一遍之后就束之高阁了,不过里面的内容一直在在脑海中回放,...

原创小博客
今天
19
0
IC-CAD Methodology知识图谱

CAD (Computer Aided Design),计算机辅助设计,指利用计算机及其图形设备帮助设计人员进行设计工作,这个定义同样可以用来近似描述IC公司CAD工程师这个岗位的工作。 早期IC公司的CAD岗位最初...

李艳青1987
今天
18
0
CompletableFuture get方法一直阻塞或抛出TimeoutException

问题描述 最近刚刚上线的服务突然抛出大量的TimeoutException,查询后发现是使用了CompletableFuture,并且在执行future.get(5, TimeUnit.SECONDS);时抛出了TimeoutException异常,导致接口响...

xiaolyuh
今天
9
0
dubbo 搭建与使用

官网:http://dubbo.apache.org/en-us/ 一,安装监控中心(可以不安装) admin管理控制台,monitor监控中心 下载 bubbo ops 这个是新版的,需要node.js环境,我没有就用老版的了...

小兵胖胖
今天
19
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部