我有一个字符串:

var str = "username:joe_1987;password:123456;email:[email protected];"


我可以(或更确切地说)如何以一种可以调用其参数的方式创建对象,例如:

alert(obj.password)并获得123456

最佳答案

我建议拆分字符串中的分号,为您提供一个看起来像这样的数组:

["username:joe_1987", "password:123456", "email:[email protected]"]


然后,您可以将相同的想法应用于此数组的每个元素,然后创建对象。我在下面摘录了一个片段来说明:

var str = "username:joe_1987;password:123456;email:[email protected];"

var splitBySemiColon = str.split(";");
splitBySemiColon.pop(); //Remove the last element because it will be ""

var obj = {};

for(elem in splitBySemiColon) {
    splitByColon = splitBySemiColon[elem].split(":");
    obj[splitByColon[0]] = splitByColon[1];
}


希望这可以帮助!

编辑:为您提供了一个实时演示-https://repl.it/CtK8

10-08 12:48