如何查找字符串的最后一行(package.json)

我一直试图在package.json的末尾添加新字段。 我不能使用

  • JSON.parse
  • 添加新项
  • JSON.stringfy

方法,因为它给了我单行输出。我不想在git diff中更改package.json中的其他行,我只需要查看所有新属性即可。

因此,在尝试获取字符串格式的package.json后,我尝试查找最后一行。 这些是步骤

  • 删除右花括号
  • 查找最后一行(修剪空白并输入)
  • 添加逗号
  • 在下一行添加新属性
  • 添加右花括号

这有效,但是json也可能在和处包含数字,空值,布尔值(真/假)。如果是这种情况,如何检测到这些?还请让我知道json可能具有的其他任何类型。


第一种方法,这要感谢 @jonrsharpe 的贡献。

packageJSON = `{
    "abc": "def","qwe": true
}
`
function addNewField(packageJSON){

    const obj = JSON.parse(packageJSON)
    obj["newField"] = {
        z: "zzz",x: 100
    }
    return JSON.stringify(obj,null,2)

}

const resultStr = addNewField(packageJSON)
/*
"{
  "abc": "def","qwe": true,"newField": {
    "z": "zzz","x": 100
  }
}"
*/
slamming123456 回答:如何查找字符串的最后一行(package.json)

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3120944.html

大家都在问