在 JavaScript 中合并对象文字/json
merging object literals/json in javascript
我正在尝试将所有数据对象合并为一个链接的对象
var person1 = {
hello: {
"david": {
"hours": "44",
"money": "22"
}
}
};
var person2 = {
world: {
"pearce": {
"hours": "21",
"money": "11"
}
}
};
我希望它看起来像这样:
var mergedObjects = {
hello: {
"david": {
"hours": "44",
"money": "22"
}
},
world: {
"pearce": {
"hours": "21",
"money": "11"
}
}
};
我知道如何使用数组执行此操作,但是如何在javascript中作为JSON对象来执行此操作,以保持正确的结构
看看这个....
答案在这里...如何动态合并两个 JavaScript 对象的属性?
JS小提琴
.JS:
function mergeRecursive(obj1, obj2) {
for (var p in obj2) {
try {
// Property in destination object set; update its value.
if ( obj2[p].constructor==Object ) {
obj1[p] = mergeRecursive(obj1[p], obj2[p]);
} else {
obj1[p] = obj2[p];
}
} catch(e) {
// Property in destination object not set; create it and set its value.
obj1[p] = obj2[p];
}
}
return obj1;
}
var person1 = {
hello: {
"david": {
"hours": "44",
"money": "22"
}
}
};
var person2 = {
world: {
"pearce": {
"hours": "21",
"money": "11"
}
}
};
console.log(mergeRecursive(person1, person2));
检查这篇文章:链接
var person1 = {
hello: {
"david": {
"hours": "44",
"money": "22"
}
}
};
var person2 = {
world: {
"pearce": {
"hours": "21",
"money": "11"
}
}
};
function merge_options(obj1,obj2){
var obj3 = {};
for (var attrname in obj1) { obj3[attrname] = obj1[attrname]; }
for (var attrname in obj2) { obj3[attrname] = obj2[attrname]; }
return obj3;
}
merge_options(person1,person2);
你可以用jQuery轻松地做到这一点:
var person1 = {
hello: {
"david": {
"hours": "44",
"money": "22"
}
}
};
var person2 = {
world: {
"pearce": {
"hours": "21",
"money": "11"
}
}
};
var mergedObjects = $.extend({}, person1, person2);
console.dir(mergedObjects);
相关文章:
- jQuery匹配JSON对象的部分文本
- 在循环中分配json值时,值被覆盖
- 需要帮助设置json数组
- 如何在Javascript中将JSon对象转换为数组
- 我可以在json对象中添加一个函数吗
- 错误:JSON分析错误:使用角度转换时,属性名称必须是字符串文字
- 在 JavaScript 中合并对象文字/json
- 解析包含 /regexp/ 文字的类似 JSON 的输入
- Vue.js 和 vue-i18n,从 $ajax 到 Object 文字的 json
- 如何在 PHP 中将 JavaScript 文字对象转换为 Json 对象
- 字符转义:从 Python 字符串文字到 JSON,然后到 HTML
- JSON语法-变量被解释为文字
- 将JSON名称/值转换为具有对象文字的数组
- KineticJS节点.从JSON对象文字创建
- 从ASP返回JavaScript对象文字,而不是JSON字符串.. NET MVC端点
- 用变量值而不是文字遍历JSON树,使用NodeJS不起作用
- SyntaxError:JSON.parse:使用d3.js的JSON数据的第2行第14列的字符串文字中存在错误的控制字
- 动态创建json时出现未终止的字符串文字错误
- firefox插件-为什么将数据存储在JSON中,而不是JavaScript对象文字/初始化器中
- 如何解码类似 JSON 的 JavaScript 对象文字字符串