Javascript:从字符串创建自定义对象

时间:2018-03-28 16:09:11

标签: javascript

我有一串逗号分隔的值。如下:

var myValues = "Ip1, Ip2, Ip3";

我想将其转换为自定义对象。结果应该是:

 {
  Input: 'Ip1',
  Output: 'Ip1_Updated'    
 },
 { 
  Input: 'Ip2',
  Output: 'Ip2_Updated'
 },
 { 
  Input: 'Ip3',
  Output: 'Ip3_Updated'
 }

解决这个问题的最佳方式是什么? 我可以拆分“,”然后遍历字符串并创建自定义数组

2 个答案:

答案 0 :(得分:5)

您可以拆分然后使用函数map



var myValues = "Ip1, Ip2, Ip3",
    result = myValues.split(",").map(s => ({ Input: s.trim(), Output: `${s.trim()}_Updated` }));
 
 console.log(result)

.as-console-wrapper { max-height: 100% !important; top: 0; }




另一种方法是准备数据,然后转换为所需的结构:



var myValues = "Ip1, Ip2, Ip3",
    split = myValues.split(","),
    preparedData = split.map(str => str.trim()),
    result = preparedData.map(ip => ({ Input: ip, Output: `${ip}_Updated` }));
 
 console.log(result);

.as-console-wrapper { max-height: 100% !important; top: 0; }




答案 1 :(得分:2)

您可以使用split()map()

var myValues = "Ip1, Ip2, Ip3";
myValues = myValues.split(',').map(function(i){
  return {Input: i.trim(), Output: i.trim() + '_Updated'};
});

console.log(myValues);