有没有一种方法可以修剪一个对象的所有属性?换句话说,我能改变一下吗:
{a: ' a', b: 'b ', c: ' c '}
对此:
{a: 'a', b: 'b', c: 'c'}
似乎我不能映射一个对象,那么我怎样才能将一个函数应用到所有的属性上,然后把对象找回来呢?
可以使用object.keys()
方法迭代对象属性并更新其值:
Object.keys(obj).map(k => obj[k] = obj[k].trim());
演示:
null
var obj = {
a: ' a',
b: 'b ',
c: ' c '
};
Object.keys(obj).map(k => obj[k] = obj[k].trim());
console.log(obj);
您可以使用object.keys
来减少和修剪值,如下所示:
null
function trimObjValues(obj) {
return Object.keys(obj).reduce((acc, curr) => {
acc[curr] = obj[curr].trim()
return acc;
}, {});
}
const ex = {a: ' a', b: ' b', c: ' c'};
console.log(trimObjValues(ex));
你可以通过循环来完成。
for(var key in myObject) {
myObject[key] = myObject[key].trim();
}