JavaScript实现的类字典插入或更新方法实例
以下是具体的实现代码:
```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]; // 更新字段值
}
break; // 找到后退出循环
}
}
array[len] = {}; // 新增一个空对象
array[len][keyName] = keyVal; // 设置键值
for (var k = 0; k < fieldNames.length; k++) {
array[len][fieldNames[k]] = fieldVals[k]; // 设置字段值
}
}
}
```
```javascript
var orders = [
{
"OrderId": 1,
"OrderAmount": {
"OldValue": 10,
"NewValue": 20
}
},
{
"OrderId": 2,
"OrderAmount": {
"OldValue": 20,
"NewValue": 30
}
}
];
```
我们根据订单ID为1的记录,更新其订单金额:
```javascript
insertOrUpdate(orders, "OrderId", 1, ["OrderAmount"], [{"OldValue": 145, "NewValue": 1125}]);
console.dir(orders); // 输出更新后的数组
```javascript
编程语言
- JavaScript实现的类字典插入或更新方法实例
- asp.net Cookie值中文乱码问题解决方法
- 基于Flowplayer打造一款免费的WEB视频播放器附源码
- js改变html的原有内容实现方法
- Yii2框架操作数据库的方法分析【以mysql为例】
- 基于PHP实现的事件机制实例分析
- jquery实现可自动收缩的TAB网页选项卡代码
- asp.net显示图片到指定的Image控件中 具体实现
- JavaScript中String.match()方法的使用详解
- php获取英文姓名首字母的方法
- Hibernate使用中防止SQL注入的几种方案
- 如何判断发言是否为空?
- php获取当前url地址的方法小结
- PHP编译安装中遇到的两个错误和解决方法
- 正则表达式简单的检查输入email是否合法程序
- JS中的数组转变成JSON格式字符串的方法