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

如何用JavaScript将JSON中特定元素转换为整数?

如何在JavaScript中仅将JSON特定元素转为整数(不修改整体结构)

作为JavaScript新手,我想在不改动整个JSON结构的前提下,把其中指定元素转换成整数。

输入JSON:

{
    "Response" : {
       "Data" : {
          "Type" : "Set",
          "Serial" : "75798"
       }
    }
}

期望输出JSON:

{
   "Response" : {
      "Data" : {
         "Type" : "Set",
         "Serial" : 75798
      }
   }
}

我知道有parseInt函数,但不知道怎么写完整的代码实现这个需求。


实现步骤

  1. 解析JSON为可操作对象:用JSON.parse()把原始JSON字符串转成JavaScript对象,这样才能修改内部属性。
  2. 定位并转换目标属性:通过对象层级路径找到Serial属性,用parseInt()将其字符串值转为整数。
  3. 转回格式化JSON字符串:用JSON.stringify()把修改后的对象重新转成带缩进的JSON字符串,匹配期望格式。

完整代码示例

// 原始JSON字符串
const originalJson = `{
    "Response" : {
       "Data" : {
          "Type" : "Set",
          "Serial" : "75798"
       }
    }
}`;

// 解析为JavaScript对象
const dataObj = JSON.parse(originalJson);

// 将Serial属性转为整数(指定十进制解析避免意外)
dataObj.Response.Data.Serial = parseInt(dataObj.Response.Data.Serial, 10);
// 也可以用更简洁的Number():dataObj.Response.Data.Serial = Number(dataObj.Response.Data.Serial);

// 转回带缩进的JSON字符串
const modifiedJson = JSON.stringify(dataObj, null, 3);

// 输出结果
console.log(modifiedJson);

代码说明

  • JSON.parse():将JSON字符串转为JS对象,是修改内部属性的前提。
  • parseInt(value, 10):第二个参数10强制使用十进制解析,防止字符串以0开头时被识别为八进制的问题。
  • JSON.stringify(dataObj, null, 3):第三个参数3设置缩进为3个空格,让输出的JSON结构和期望格式一致,可读性更强。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 03:26:11