我有一个这样的字符串 "sum 123,645,423,123,432";
我怎样才能把这个字符串转换成这样:
{
“sum”: [ 123,645,423,123,432 ]
}
Run Code Online (Sandbox Code Playgroud)
我像这样尝试:
var arr = "sum 123,645,423,123,432";
var c = arr.split(',');
console.log(c);
VM3060:1 (5) ["sum 123", "645", "423", "123", "432"]
Run Code Online (Sandbox Code Playgroud)
谢谢!
首先,我.split()是空格的字符串,它返回一个像这样的数组["sum" , "123,645,423,123,432"]
而不是写作var name = str.split(" ")[0],var arrString = str.split(" ")[1]我使用了一个解构赋值
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment
下一步是将每个元素arrString向上拆分,,然后.map()将其拆分为带有Number().
最后,我result使用动态键分配一个对象[name]并设置arr为动态属性。
var str = "sum 123,645,423,123,432";
var [name,arrString] = str.split(" ");
var arr = arrString.split(",").map(Number);
let result = {
[name]: arr
}
console.log(result);
//reverse
var [keyname] = Object.keys(result);
var strngArr = arr.join(",");
var str = `${keyname} ${strngArr}`
console.log(str);Run Code Online (Sandbox Code Playgroud)