You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用JavaScript将#和|分隔的字符串转换为JSON

解决思路与代码实现

你可以通过拆分字符串、过滤无效项、映射为对象、转JSON这几步完成需求,具体操作如下:

  • 拆分并过滤初始数组
    用split('#')拆分原字符串后,数组第一个元素是空字符串(因为原字符串以#开头),需要先用filter剔除空项:

    const myString = "#101|Maria|Smith|Teacher|26000|Football #102|Albert|Sullivan|Pianist|85000|Swimming";
    const userBlocks = myString.split('#').filter(block => block.trim() !== '');
    
  • 处理每个用户块并映射为对象
    对每个用户块,用split('|')拆分成字段数组,再给每个字段做trim()(消除原字符串中可能存在的空格干扰),最后把字段对应到目标对象的属性上:

    const users = userBlocks.map(block => {
      const fields = block.split('|').map(field => field.trim());
      return {
        id: fields[0],
        Name: fields[1],
        LastName: fields[2],
        Job: fields[3],
        Salary: fields[4],
        FavSport: fields[5]
      };
    });
    
  • 转换为格式化的JSON
    使用JSON.stringify的参数生成带缩进的美观JSON结构:

    const resultJSON = JSON.stringify(users, null, 4);
    console.log(resultJSON);
    

合并运行上述代码,就能得到你想要的JSON输出。如果后续遇到字段数量不一致的情况,可以添加简单的容错判断(比如检查fields长度是否符合预期)来避免报错。

内容的提问来源于stack exchange,提问作者alvaro242

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 21:25:43