在 Node-RED 里,若要从字符串 `"{"1000":"60"}"` 分别获取 `1000` 和 `60`,可先把这个字符串转为 JavaScript 对象,然后获取对应的值。以下是示例代码: ```javascript // 假设 msg._original?.limitjson 是字符串 "{"1000":"60"}" // 首先将字符串转换为 JavaScript 对象 try { // 使用 JSON.parse 方法将字符串解析为对象 const obj = JSON.parse(msg._original?.limitjson); // 获取对象的键 const key = Object.keys(obj)[0]; // 获取对象对应键的值 const value = obj[key]; // 打印结果 console.log("键: ", key); console.log("值: ", value); // 可以根据需要将结果赋给 msg 对象的属性 msg.key = key; msg.value = value; } catch (error) { // 若解析过程中出现错误,使用 node.error 输出错误信息 node.error('解析 JSON 时出错: ' + error.message); } // 继续 Node-RED 的流程,将 msg 对象传递给下一个节点 return msg; ``` 额外需要注意的逻辑点 1. 要确保 `msg._original?.limitjson` 是有效的 JSON 字符串,不然 `JSON.parse` 会抛出错误。 2. 此代码假设 JSON 对象仅有一个键值对,若有多个键值对,需要修改代码以处理多个键值对。 3. 处理 `JSON.parse` 可能抛出的错误很重要,防止因无效的 JSON 字符串让程序崩溃。 [2025-07-30 11:28:45 | AI写代码神器 | 380点数解答]