Javascript 如何通过下划线更改集合结构?
我目前的收藏如下:Javascript 如何通过下划线更改集合结构?,javascript,underscore.js,Javascript,Underscore.js,我目前的收藏如下: [ {Tom:true,age:23}, {Jack:true:age:22}, {Lucy:false,age:22} ] 如何通过下划线将其转换为此 [ {name:'Tom',isMale:true,age:23}, {name:'Jack',isMale:true,age:22}, {name:'Lucy',isMake:true,age:22} ] 您可以使用(瑞士军刀迭代器)复制内部对象,同时重新排列name和isMale值。大概是这样
[
{Tom:true,age:23},
{Jack:true:age:22},
{Lucy:false,age:22}
]
如何通过下划线将其转换为此
[
{name:'Tom',isMale:true,age:23},
{name:'Jack',isMale:true,age:22},
{name:'Lucy',isMake:true,age:22}
]
您可以使用(瑞士军刀迭代器)复制内部对象,同时重新排列name
和isMale
值。大概是这样的:
_(a).map(function(o) {
return _(o).reduce(function(memo, v, k) {
if(k === 'age') {
# Copy 'age' through as-is
memo[k] = v
}
else {
# Assume the rest is name:boolean so bust it apart
memo.name = k;
memo.isMale = v;
}
return memo;
}, { });
});
演示:您可以使用(瑞士军刀迭代器)复制内部对象,同时重新排列name
和isMale
值。大概是这样的:
_(a).map(function(o) {
return _(o).reduce(function(memo, v, k) {
if(k === 'age') {
# Copy 'age' through as-is
memo[k] = v
}
else {
# Assume the rest is name:boolean so bust it apart
memo.name = k;
memo.isMale = v;
}
return memo;
}, { });
});
演示:您可以使用(瑞士军刀迭代器)复制内部对象,同时重新排列name
和isMale
值。大概是这样的:
_(a).map(function(o) {
return _(o).reduce(function(memo, v, k) {
if(k === 'age') {
# Copy 'age' through as-is
memo[k] = v
}
else {
# Assume the rest is name:boolean so bust it apart
memo.name = k;
memo.isMale = v;
}
return memo;
}, { });
});
演示:您可以使用(瑞士军刀迭代器)复制内部对象,同时重新排列name
和isMale
值。大概是这样的:
_(a).map(function(o) {
return _(o).reduce(function(memo, v, k) {
if(k === 'age') {
# Copy 'age' through as-is
memo[k] = v
}
else {
# Assume the rest is name:boolean so bust it apart
memo.name = k;
memo.isMale = v;
}
return memo;
}, { });
});
演示:age
从您的对象,然后将其转换为可以为您的工作提供基础:
_.map(data, function(o) {
var p = _.pairs(_.omit(o, 'age'))[0]; // [name, boolean]
return {
age: o.age,
name: p[0],
isMale: p[1]
};
});
age
从您的对象中提取,然后将其转换为,可以为您提供一个使用的基础:
_.map(data, function(o) {
var p = _.pairs(_.omit(o, 'age'))[0]; // [name, boolean]
return {
age: o.age,
name: p[0],
isMale: p[1]
};
});
age
从您的对象中提取,然后将其转换为,可以为您提供一个使用的基础:
_.map(data, function(o) {
var p = _.pairs(_.omit(o, 'age'))[0]; // [name, boolean]
return {
age: o.age,
name: p[0],
isMale: p[1]
};
});
age
从您的对象中提取,然后将其转换为,可以为您提供一个使用的基础:
_.map(data, function(o) {
var p = _.pairs(_.omit(o, 'age'))[0]; // [name, boolean]
return {
age: o.age,
name: p[0],
isMale: p[1]
};
});