我不是只看原生的javascript。我也对jQuery和underscore.js持开放态度。我用Google搜索了一下,我发现问题/答案只解释了如何组合两个对象而不是更多。
来自jquery的.extend可以做到这一点。我正在寻找将具有不同属性的n个对象组合成单个对象的东西。
我实际上正在做一个$('form').serializeArray()
,然后我从表单中获取了一系列对象。有没有办法从表单中获取单个对象?或者如何将具有不同属性的更多对象组合成单个对象?
答案 0 :(得分:1)
要将表单转换为json对象,请使用this。 引用上面的答案:
serializeArray
已经完全如此,你只需按摩即可 数据为您所需的格式:$.fn.serializeObject = function() { var o = {}; var a = this.serializeArray(); $.each(a, function() { if (o[this.name] !== undefined) { if (!o[this.name].push) { o[this.name] = [o[this.name]]; } o[this.name].push(this.value || ''); } else { o[this.name] = this.value || ''; } }); return o; };
要合并多个对象,请使用underscore extend:
_.extend({name: 'moe'}, {age: 50}, {test: "test"});
$.extend({name: 'moe'}, {age: 50}, {test: "test"})