使用 javascript 从由管道分隔的字符串中提取键和值

Extract the key and value from a string separated by pipe using javascript

本文关键字:字符串 提取 键和值 分隔 javascript 管道 使用      更新时间:2023-09-26

>我有一个管道分隔格式的字符串,如下所示

var request = "Country : India|Location : Mumbai|Attachment:Photo.png";

当我进行拆分时,它会给出以下内容作为输出

var p = request.split("|");
(
"Country : India",
"Location : Mumbai",
"Attachment : Photo.png"
)

如何提取密钥及其各自的值?整个值用引号引起来。请帮忙

您可以Array.reduce request.split("|")并返回基于键值的对象。

var obj = request.split("|").reduce(function(o, c){
   var arr = c.split(":");
   return o[arr[0].trim()] = arr[1].trim(), o; // comma operator
},{});

当您通过console.log(obj)登录时,您会得到

{ Country: "India", Location: "Mumbai", Attachment: "Photo.png" }

你去吧:

function getKeyvalue() {
            var request = "Country : India|Location : Mumbai|Attachment:Photo.png";
            var arr = request.split("|");
            for (var i in arr) {
                var newarr = arr[i].split(":");
                var key = newarr[0]; // key 
                var value = newarr[1]; // value
            }
        }

您可以使用代码将所有键存储在key中,值存储在value键和值可以使用相同的索引来获取

var request = "Country : India|Location : Mumbai|Attachment:Photo.png";
var p = request.split("|");
var key = [];
var value = [];
for(var i=0; i<p.length; i++){
  var pmap = p[i].split(":");
  key = pmap[0];
  value = pmap[1];
}

将其发布为替代方案。使用地图将是一个更好的选择。