JavaScript 检索并替换字符串化 JSON 中的字符串部分

标签 javascript json string replace

我有一个与此相比的字符串:

{
    "objects": [{
        "originY": "top",
        "left": 0,
        "top": 0,
        "width": 118.33,
        "height": 100,
        "name": 1
    }, {
        "originY": "top",
        "left": 0,
        "top": 0,
        "width": 118.33,
        "height": 100,
        "name": 2
    }],
    "background": ""
}

我需要循环到该字符串并检索 left、top、width 和 height 的值,并将它们乘以一个因子,然后再次将它们保存为新字符串。

知道如何实现这个目标吗?

最佳答案

因为字符串是 JSON,所以处理数据的最简单方法是将其解析为对象数组,更新值,然后再次将其作为字符串输出。

// Parse
var container = JSON.parse(yourString);

// Get and update
var i, len, top, left, width, height;
len = container.objects.length;
for (i = 0; i < len; i++) {
    top = container.objects[i].top;
    left = container.objects[i].left;
    height= container.objects[i].height;
    width = container.objects[i].width;
    // * Save top, left, width somewhere. *
    // Multiply by some factor.
    container.objects[i].top *= factor;
    container.objects[i].left *= factor;
    container.objects[i].height *= factor;
    container.objects[i].width *= factor;
}

// Convert to string again.
theString = JSON.stringify(container);

关于JavaScript 检索并替换字符串化 JSON 中的字符串部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23610599/

相关文章:

javascript - 通过ajax填充表非常慢

c - 如何在循环中使用 sscanf?

c++ - C - 使用 find() 分解字符串

python - 在python中将字母数字字符串转换为数字字符串

javascript - Node.js JSON 异步解析

javascript - 页面加载 10 秒后显示 div

javascript - 设置拖放子节点以在表格中显示json数组

javascript - 无法在 Windows 10 中执行脚本 docker-compose YML 文件

javascript - Facebook 按钮上设置的语言

javascript - AngularJS:出现 "[...] is not a function"错误