首页 > 解决方案 > 将字符串转换为数组格式的java脚本

问题描述

我有一个这样的字符串"sum 123,645,423,123,432";

我怎样才能把这个字符串转换成这样:

{
  “sum”: [ 123,645,423,123,432 ]
}

我这样尝试:

var arr = "sum 123,645,423,123,432";
var c = arr.split(',');
console.log(c);
VM3060:1 (5) ["sum 123", "645", "423", "123", "432"]

谢谢!

标签: javascript

解决方案


首先,我.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);


推荐阅读