JavaScript实现的类字典插入或更新方法实例


Posted in Javascript onJuly 10, 2015

本文实例讲述了JavaScript实现的类字典插入或更新方法。分享给大家供大家参考。具体如下:

代码表述了类字典插入或更新的相关思想,感兴趣的朋友主要看懂代码意思就行,不必过于深究

<script type="text/javascript">
  function insertOrUpdate(array, keyName, keyVal, fieldNames, fieldVals) {
  var hasExist = false;
  var len = array.length;
  for (var i = 0; i < len; i++) {
   if (array[i][keyName] && array[i][keyName] == keyVal) {
   // 已存在则直接更新
   hasExist = true;
   for (var j = 0; j < fieldNames.length; j++) {
    array[i][fieldNames[j]] = fieldVals[j];
   }
   }
  }
  if (!hasExist) {// 如果不存在则插入
   array[len] = {};
   array[len][keyName] = keyVal;
   for (var k = 0; k < fieldNames.length; k++) {
   array[len][fieldNames[k]] = fieldVals[k];
   }
  }
  }
  var orders = [
    {
    "OrderId" : 1,
    "OrderAmount" : {
     "OldValue" : 10,
     "NewValue" : 20
    }
    }, 
    {
    "OrderId" : 2,
    "OrderAmount" : {
     "OldValue" : 20,
     "NewValue" : 30
    }
    }];
  insertOrUpdate(orders, "OrderId", 1, ["OrderAmount"], [{"OldValue": 145, "NewValue": 1125}]);
  console.dir(orders);
  insertOrUpdate(orders, "OrderId", 3, ["OrderAmount"], [{"OldValue": 75, "NewValue": 95}]);
  console.dir(orders);
</script>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
javascript算法题 求任意一个1-9位不重复的N位数在该组合中的大小排列序号
Jul 21 Javascript
浅析jquery某一元素重复绑定的问题
Jan 03 Javascript
正则表达式优化JSON字符串的技巧
Dec 24 Javascript
Jquery Easyui自定义下拉框组件使用详解(21)
Dec 31 Javascript
高效的jQuery代码编写技巧总结
Feb 22 Javascript
JavaScript实现的商品抢购倒计时功能示例
Apr 17 Javascript
微信小程序实现页面跳转传值的方法
Oct 12 Javascript
axios进阶实践之利用最优雅的方式写ajax请求
Dec 20 Javascript
Angular HMR(热模块替换)功能实现方法
Apr 04 Javascript
微信小程序实现留言功能
Oct 31 Javascript
微信小程序利用Canvas绘制图片和竖排文字详解
Jun 25 Javascript
小程序自定义导航栏兼容适配所有机型(附完整案例)
Apr 26 Javascript
JavaScript模板引擎用法实例
Jul 10 #Javascript
JavaScript实现打字效果的方法
Jul 10 #Javascript
javascript实现rgb颜色转换成16进制格式
Jul 10 #Javascript
再谈JavaScript线程
Jul 10 #Javascript
javascript实现判断鼠标的状态
Jul 10 #Javascript
javascript检查浏览器是否已经启用XX功能
Jul 10 #Javascript
javascript实现确定和取消提示框效果
Jul 10 #Javascript
You might like
构建简单的Webmail系统
2006/10/09 PHP
php中文字母数字验证码实现代码
2008/04/25 PHP
PHP内核探索之变量
2015/12/22 PHP
php使用GD2绘制几何图形示例
2017/02/15 PHP
javascript 写类方式之三
2009/07/05 Javascript
asp.net网站开发中用jquery实现滚动浏览器滚动条加载数据(类似于腾讯微博)
2012/03/14 Javascript
jquery简单实现幻灯片的方法
2015/08/03 Javascript
jquery实现简单合拢与展开网页面板的方法
2015/09/01 Javascript
原生js实现移动端瀑布流式代码示例
2015/12/18 Javascript
Js的Array数组对象详解
2016/02/22 Javascript
Express + Node.js实现登录拦截器的实例代码
2017/07/01 Javascript
vue的状态管理模式vuex
2017/11/30 Javascript
详解用vue2.x版本+adminLTE开源框架搭建后台应用模版
2019/03/15 Javascript
vue跳转方式(打开新页面)及传参操作示例
2020/01/26 Javascript
JS中的const命令你真懂它吗
2020/03/08 Javascript
jQuery实现飞机大战小游戏
2020/07/05 jQuery
详谈vue中router-link和传统a链接的区别
2020/07/22 Javascript
VSCode 添加自定义注释的方法(附带红色警戒经典注释风格)
2020/08/27 Javascript
[46:49]完美世界DOTA2联赛PWL S3 access vs Rebirth 第二场 12.19
2020/12/24 DOTA
Python实现批量读取word中表格信息的方法
2015/07/30 Python
Python实现感知机(PLA)算法
2017/12/20 Python
python分布式计算dispy的使用详解
2019/12/22 Python
Python3.x+迅雷x 自动下载高分电影的实现方法
2020/01/12 Python
详解css3 object-fit属性
2018/07/27 HTML / CSS
中国领先的专业家电网购平台:国美在线
2016/12/25 全球购物
高中毕业自我鉴定
2013/12/22 职场文书
幼师自我鉴定
2014/02/01 职场文书
公务员上班玩游戏检讨书
2014/09/17 职场文书
离婚协议书该怎么写
2014/10/04 职场文书
宇宙与人观后感
2015/06/05 职场文书
中学政教处工作总结
2015/08/13 职场文书
企业团队精神心得体会
2016/01/19 职场文书
golang在GRPC中设置client的超时时间
2021/04/27 Golang
高考要来啦!用Python爬取历年高考数据并分析
2021/06/03 Python
Python语言中的数据类型-序列
2022/02/24 Python
Redis分布式锁的7种实现
2022/04/01 Redis