如果我有对象data1和data2,我该如何制作data3?
我稍后会在调用MVC Server控制器的AJAX请求中将data3作为参数发送。 (只是说我不能将数据3作为一个阵列)。
var data1 = {
managementPointId: 1,
businessUnitId: 2
};
var data2 = {
computerPackageId: 3
};
var data3 = {
managementPointId: 1,
businessUnitId: 2,
computerPackageId: 3
};
答案 0 :(得分:5)
使用$.extend
方法:
var data1 = {
managementPointId: 1,
businessUnitId: 2
};
var data2 = {
computerPackageId: 3
};
var data3 = $.extend({}, data1, data2);
document.write('<pre>' + JSON.stringify(data3, null, 4) + '</pre>');
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
答案 1 :(得分:1)
如果您有兴趣使用普通的javascript,
只需声明类似
的varvar obj3 = yourfunction(obj1,obj2,obj3);
并在你的函数中编写一个嵌套的for循环,循环参数并循环遍历提供的objs中的所有道具并返回obj。
试试吧。 注意空检查和其他角落情况,如对象检查等......,答案 2 :(得分:1)
使用纯JavaScript:
function extend(a, b){
for(var key in b)
if(b.hasOwnProperty(key))
a[key] = b[key];
return a;
}
var data1 = {
managementPointId: 1,
businessUnitId: 2
};
var data2 = {
computerPackageId: 3
};
var data3 = extend(data1, data2);
document.write('<pre>' + JSON.stringify(data3, null, 4) + '</pre>');
&#13;