无法使用Javascript或JQuery修剪对象属性

时间:2019-03-28 17:22:19

标签: javascript jquery object trim

我一直无法找到一种方法来修剪(消除每个字符串开头和结尾的空格)代码中对象数组的属性。遵循此处其他线程中的建议无效。 我有一个名为“ res”的对象数组。以下属性位于“ res.d”中。如何修剪此对象,然后进行JSON.parse解析,如下所示:

res.d = JSON.parse(res.d) 

谢谢

[{"id":"LODGE FARM WEST TO LOWER LODGE FARM, LOWER LODGE","name":"10444"}, 
{"id":"Lodge Lower Barn                                            
","name":"124069"},{"id":"Longman\u0027s Barn Fm                                           
","name":"124820"},{"id":"Lord\u0027s Hill Fm                 
","name":"125103"},{"id                             
":"Lord\u0027s Wood Fm                                              
","name":"125126"},{"id":"Lovell\u0027s Court Fm                                           
","name":"125345"},{"id":"Love\u0027s Copse         ","name":"125362"}, 
{"id"                                       
:"Lower Woods Lodge               "}]

4 个答案:

答案 0 :(得分:0)

let newObj = res.d.map((value) => {
      return{ 
        id: value.id.trim(),
        name: value.name.trim()
      }
    })

console.log(newObj)

这应该修剪对象中的值,并且'newObj'将具有新值

答案 1 :(得分:0)

我只是遍历数组res.d中的所有对象并修剪每个属性。

for (var i = 0; i < res.d.length; i++) {
    res.d[i].id = res.d[i].id.trim();
    res.d[i].name = res.d[i].name.trim();
}

答案 2 :(得分:0)

您也可以在代码中要求使用lodash后使用它。 如果res.d是对象数组

_.map(res.d, val => _.mapValues(val, _.trim()));

否则,如果res.d是对象

_.mapValues(res.d, _.trim);

参考:https://lodash.com/docs/#trim

答案 3 :(得分:0)

您可以执行以下操作:

const items = [
  { id: "       LODGE FARM WEST TO LOWER LODGE FARM, LOWER LODGE", name: "10444" },
  { id: "Hello world             ", name: "5555" }
];

const res = items.map(item => {
  return {
    id: item.id.trim(),
    name: item.name.trim()
  };
});