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 相关文章推荐
基于jQuery的弹出消息插件 DivAlert之旅(一)
Apr 01 Javascript
jquery实现漂浮在网页右侧的qq在线客服插件示例
May 13 Javascript
JS代码同步文本框内容的实例方法
Jul 12 Javascript
js防止页面被iframe调用的方法
Oct 30 Javascript
判断访客终端类型集锦
Jun 05 Javascript
Jquery实现顶部弹出框特效
Aug 08 Javascript
JS实现很实用的对联广告代码(可自适应高度)
Sep 18 Javascript
基于JavaScript实现快速转换文本语言(繁体中文和简体中文)
Mar 07 Javascript
如何用JS/HTML将时间戳转换为“xx天前”的形式
Feb 06 Javascript
Angular2入门教程之模块和组件详解
May 28 Javascript
微信小程序中使用wxss加载图片并实现动画效果
Aug 13 Javascript
vue实现的仿淘宝购物车功能详解
Jan 27 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
PHP中把有符号整型转换为无符号整型方法
2015/05/27 PHP
php lcg_value与mt_rand生成0~1随机小数的效果对比分析
2017/04/05 PHP
thinkphp分页集成实例
2017/07/24 PHP
thinkphp整合系列之极验滑动验证码geetest功能
2019/06/18 PHP
PHP autoload使用方法及步骤详解
2020/09/05 PHP
为超链接加上disabled后的故事
2010/12/10 Javascript
基于jQuery替换table中的内容并显示进度条的代码
2011/08/02 Javascript
JS中setTimeout()的用法详解
2013/04/14 Javascript
jQuery实现的手机发送验证码倒计时效果代码分享
2015/08/24 Javascript
Angular.js跨controller实现参数传递的两种方法
2017/02/20 Javascript
JS实现经典的中国地区三级联动下拉菜单功能实例【测试可用】
2017/06/06 Javascript
angular.js和vue.js中实现函数去抖示例(debounce)
2018/01/18 Javascript
浅谈React的最大亮点之虚拟DOM
2018/05/29 Javascript
Node.js折腾记一:读指定文件夹,输出该文件夹的文件树详解
2019/04/20 Javascript
JavaScript计算正方形面积
2019/11/26 Javascript
ant-design-vue 快速避坑指南(推荐)
2020/01/21 Javascript
[01:16]2014DOTA2 TI专访C9战队EE:中国五强中会占三席
2014/07/10 DOTA
[46:44]DOTA2-DPC中国联赛 正赛 Ehome vs PSG.LGD BO3 第二场 3月7日
2021/03/11 DOTA
在Django框架中设置语言偏好的教程
2015/07/27 Python
Python卸载模块的方法汇总
2016/06/07 Python
使用Python读取大文件的方法
2018/02/11 Python
Python异步操作MySQL示例【使用aiomysql】
2019/05/16 Python
如何用C代码给Python写扩展库(Cython)
2019/05/17 Python
python+opencv像素的加减和加权操作的实现
2019/07/14 Python
Python实现报警信息实时发送至邮箱功能(实例代码)
2019/11/11 Python
简单介绍CSS3中Media Query的使用
2015/07/07 HTML / CSS
史泰博(Staples)中国官方网站:办公用品一站式采购
2016/09/05 全球购物
美国百年历史早餐食品供应商:Wolferman’s
2017/01/18 全球购物
大学校务公开实施方案
2014/03/31 职场文书
“向国旗敬礼”主题班会活动设计方案
2014/09/27 职场文书
交通事故被告答辩状
2015/05/22 职场文书
表扬信范文
2019/04/22 职场文书
java解析XML详解
2021/07/09 Java/Android
世界十大狙击步枪排行榜
2022/03/20 杂记
游戏《铁拳》动画化!2022年年内播出
2022/03/21 日漫
PostgreSQL数据库去除重复数据和运算符的基本查询操作
2022/04/12 PostgreSQL