写一个js方法将字符串数组与数字数组互转

在前端开发中,有时需要将字符串数组转换为数字数组,或者将数字数组转换为字符串数组。以下是一个简单的JavaScript方法,用于实现这两种转换:

// 将字符串数组转换为数字数组
function stringArrayToNumberArray(stringArray) {
  return stringArray.map(item => {
    const number = parseFloat(item);
    if (isNaN(number)) {
      throw new Error(`无法将字符串 "${item}" 转换为数字`);
    }
    return number;
  });
}

// 将数字数组转换为字符串数组
function numberArrayToStringArray(numberArray) {
  return numberArray.map(item => {
    if (typeof item !== 'number' || isNaN(item)) {
      throw new Error(`无法将非数字项 "${item}" 转换为字符串`);
    }
    return item.toString();
  });
}

使用示例:

// 字符串数组转换为数字数组
const stringArray = ['1', '2.3', '4.56'];
const numberArray = stringArrayToNumberArray(stringArray);
console.log(numberArray); // 输出: [1, 2.3, 4.56]

// 数字数组转换为字符串数组
const originalNumberArray = [10, 20.5, 30];
const stringArrayFromNumbers = numberArrayToStringArray(originalNumberArray);
console.log(stringArrayFromNumbers); // 输出: ["10", "20.5", "30"]

这两个方法分别使用 map() 函数遍历数组中的每个元素,并使用 parseFloat()toString() 进行转换。如果转换失败(例如,尝试将非数字字符串转换为数字),则会抛出一个错误。这样可以确保转换的准确性,并在出现问题时提供有用的反馈。

posted @ 2024-12-26 09:37  王铁柱6  阅读(17)  评论(0编辑  收藏  举报