如何在Javascript

时间:2018-07-09 23:40:01

标签: javascript key-value

我正在尝试将简单的字符串转换成键/值对。

input :-> str ='<name>xyz</name>'

output :-> {name : 'xyz'}

下面是myFunction,但未显示确切结果

let str = '<name>xyz</name>'

function myFunction(str) {

    let map ={}
    let key 
    let value

    str = str.split(/[.:;?!~,`"&|()<>{}[\]\r\n/\\]+/)

    str = _.compact(str)
    key = ??
    value = ??

 return map    

}

基本上<>中的所有内容都是关键,并且在结束标记之间将被输出。我这里缺少适当的逻辑。任何帮助都将是可观的:-)

1 个答案:

答案 0 :(得分:1)

匹配第一个<>之间的所有内容以匹配键,并将第一个>和第二个<之间的所有内容匹配到该值,然后创建一个对象出来:

const str = '<name>xyz</name>';
const [,key,val] = str.match(/<([^>]+)>([^<]+)</);
const obj = { [key]: val };
console.log(obj);