Node-RED 中从 "{\"1000\":\"60\"}" 字符串获取 1000 和 60 的方法及注意事项
在 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 字符串让程序崩溃。 ######[AI写代码神器 | 380点数解答 | 2025-07-30 11:28:45]
- C++ 代码实现:查找链表最大节点并移至末尾(字节豆包 | 549点数解答 | 2024-10-14 22:55:13)323
- 单链表插入节点代码:从问题剖析到完美修正全解析(字节豆包 | 907点数解答 | 2025-12-23 13:26:58)44
- Java 实现计算机硬件模拟:从 PCI 设备到主板、计算机的启动与关闭(字节豆包 | 716点数解答 | 2024-12-08 23:38:38)341
- Java 代码:模拟计算机主板启动与关闭 PCI 设备全流程(字节豆包 | 637点数解答 | 2024-12-09 08:31:54)307
- "A* Search Algorithm in Java: Code Improvements and Heuristic Calculation"(讯飞星火 | 688点数解答 | 2024-10-27 10:06:00)234
- 详解Java代码:A*搜索算法实现最短路径查找(讯飞星火 | 584点数解答 | 2024-10-27 10:07:19)269
- A* 算法:高效实现路径搜索的 Java 代码解析(GPT | 1121点数解答 | 2024-10-27 10:09:56)283
- 编程实战:输入正整数 n 构建链表并删除奇数值结点(字节豆包 | 485点数解答 | 2024-11-23 14:50:39)197
- C语言:实现两个非降序链表交集新链表S3的构造与代码解析(字节豆包 | 462点数解答 | 2024-12-05 22:30:36)221
- 单链表删除节点代码报错原因剖析与解决方案(字节豆包 | 1001点数解答 | 2025-12-23 10:46:21)48
- 星际票务总价计算程序代码实现(字节豆包 | 209点数解答 | 2026-03-29 19:10:14)17
- C++ 求解:最少操作次数让字符串无子串 “friend” (字节豆包 | 153点数解答 | 2024-08-17 16:29:54)492