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

JavaScript如何将对象转换为|分隔的指定格式字符串

问题分析

你写的代码存在以下问题:

  • 循环内每次都直接对finalStr重新赋值,没有拼接之前的内容,最终只会保留最后一个键值对
  • 没有按照要求将值包裹在括号中,分隔符|两侧也缺少空格
  • 循环结束后字符串末尾会多出多余的|分隔符

解决代码

方案1:基于原有for循环逻辑修改

let obj = { test1: 3, test2: 4, test3: 5 };
let finalStr = "";
for (var key in obj) {
  // 非首个元素前拼接分隔符
  if (finalStr) {
    finalStr += " | ";
  }
  finalStr += `${key}(${obj[key]})`;
}
console.log(finalStr); // 输出 test1(3) | test2(4) | test3(5)

方案2:内置方法实现(更简洁)

用Object.entries获取所有键值对,映射为要求的格式后用join拼接,自动处理分隔符,不会出现末尾多余分隔符的问题:

let obj = { test1: 3, test2: 4, test3: 5 };
let finalStr = Object.entries(obj)
  .map(([key, value]) => `${key}(${value})`)
  .join(' | ');
console.log(finalStr); // 输出 test1(3) | test2(4) | test3(5)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.16 17:06:07