Javascript 从对象到嵌套对象的数组
从一个对象到多个对象有没有简单的方法?由此:Javascript 从对象到嵌套对象的数组,javascript,underscore.js,lodash,Javascript,Underscore.js,Lodash,从一个对象到多个对象有没有简单的方法?由此: var obj={'generics.type':'search.type','wood.name':'search.name'} 为此: var nestedObj = [ {'generics.type': 'search.type'}, {'wood.name': 'search.name'} ] 本质上与lodash默认值相反: 我已经找了几个小时了,现在我转过来。。。感谢使用lodash或下划线,您可以使用: 这在JavaScript中不
var obj={'generics.type':'search.type','wood.name':'search.name'}
为此:
var nestedObj = [ {'generics.type': 'search.type'}, {'wood.name': 'search.name'} ]
本质上与lodash默认值相反:
我已经找了几个小时了,现在我转过来。。。感谢使用lodash或下划线,您可以使用: 这在JavaScript中不是有效的数据结构。JavaScript对象是一对键和值 对多个对象改用数组:
var multipleObjs = [ {'generics.type': 'search.type'}, {'wood.name': 'search.name'} ]
试试这个:
var createDiffObjs = function(obj ){
var nestedObj = [];
for( var prop in obj ) {
var elem = {};
elem[ prop ] = obj [prop ];
nestedObj.push( elem );
}
return nestedObj;
}
然后这样使用它:
nestedObj = createDiffObjs( obj );
也许你想要短一点的,但我认为显而易见的解决办法是唯一的
var obj={'generics.type':'search.type','wood.name':'search.name'};
var arr=uu.map(obj,函数(v,k){var o={};o[k]=v;返回o;});
控制台日志(arr)代码>
首先检查对象结构是否有效
然后去调查ES2015=ES6新的JavaScript规范,该规范调用数组(即对象)的解构,您将找到有关JavaScript新方法的所有信息。祝你好运(如果您的对象结构正确,我们可以帮助您)nestedObj`应该是数组吗?无论您想做什么,我都看不出它是\默认值的倒数。是的,它应该是数组。忘了提了。我知道了。谢谢你,米娅。我正在寻找一种方法(简单/容易)将其转换为具有嵌套对象的数组。我已经编辑了这个问题…我想你会发现这是行不通的-你不能在文本对象中使用变量作为键
var createDiffObjs = function(obj ){
var nestedObj = [];
for( var prop in obj ) {
var elem = {};
elem[ prop ] = obj [prop ];
nestedObj.push( elem );
}
return nestedObj;
}
nestedObj = createDiffObjs( obj );