📌  相关文章
📜  将字符串数组转换为对象数组javascript(1)

📅  最后修改于: 2023-12-03 15:25:17.780000             🧑  作者: Mango

将字符串数组转换为对象数组

在 JavaScript 中,有时候我们需要将一个由字符串组成的数组转换为一个由对象组成的数组。这个转换过程可以使用 JavaScript 的一些内置方法和语法实现。

方法一:使用 map 方法
const stringArray = ["John,20", "Jane,25", "Mike,30"];

const objectArray = stringArray.map((string) => {
  const [name, age] = string.split(",");
  return { name, age: Number(age) };
});

console.log(objectArray);

这个方法中,我们首先通过 map 方法循环遍历原始数组,对于每一个字符串元素,我们使用 split 方法将它拆分成名字和年龄两个部分。然后我们创建一个对象,将名字和年龄作为对象的属性,最后将这个对象添加到新的数组中。

方法二:使用 forEach 方法
const stringArray = ["John,20", "Jane,25", "Mike,30"];

const objectArray = [];

stringArray.forEach((string) => {
  const [name, age] = string.split(",");
  objectArray.push({ name, age: Number(age) });
});

console.log(objectArray);

这个方法中,我们首先创建了一个空的数组 objectArray,然后使用 forEach 方法循环遍历原始数组。对于每一个字符串元素,我们使用 split 方法将它拆分成名字和年龄两个部分,然后创建一个对象,将名字和年龄作为对象的属性,最后将这个对象 push 到新数组中。

方法三:使用 for 循环
const stringArray = ["John,20", "Jane,25", "Mike,30"];

const objectArray = [];

for (let i = 0; i < stringArray.length; i++) {
  const [name, age] = stringArray[i].split(",");
  objectArray.push({ name, age: Number(age) });
}

console.log(objectArray);

这个方法中,我们使用了 for 循环来遍历原始数组中的每一个元素。对于每一个字符串元素,我们使用 split 方法将它拆分成名字和年龄两个部分,然后创建一个对象,将名字和年龄作为对象的属性,最后将这个对象 push 到新数组中。

以上三种方法中,我们使用了 es6 中的解构赋值和简写属性语法来创建对象,同时使用 Number 函数将年龄转换成数字类型。

通过这三种方法中的任意一种,我们都可以将一个由字符串组成的数组转换为一个由对象组成的数组。

希望这篇文章对你有所帮助,如有疑问或建议,请在留言区中留言。