javascript - 红色节点中的 If 语句 (javascript)

标签 javascript node-red

我正在尝试评估节点 red 中的值: enter image description here

从加入节点我得到以下信息:

enter image description here

所以我在函数中尝试做的是检查 1. 发送的值:

var payload  = msg.payload; 
if (msg.payload[0] === "0" ){
    msg.payload  =0;
} else {
    msg.payload = 1;
}

//msg.payload = payload[0];
return msg;

所以我的问题是为什么我得到的 if 语句是假的?

感谢您的任何提示

最佳答案

不确定您要检查什么,但可以按如下方式检查有效负载属性的值:

if(typeof msg.payload === "object"){
    if(msg.payload[0].value === 0) { // Use "0" if this value is a string, but I guess not by inspecting your data.
        // Your code
    } else {
        // Other code
    }
}
else {
    // msg.payload is not an array
}

根据你的数据,你有两种情况,要么msg.payload是一个数组,要么是一个值。

关于javascript - 红色节点中的 If 语句 (javascript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52698633/

相关文章:

node.js - 发送到当前已关闭的 NodeRed 输出 Node 的数据会发生什么情况?

javascript - Node Red 多个值传入 influxDB

javascript - Angular 子组件未在父数据更改时呈现

Node-RED:在哪里可以找到 RED.nodes.createNode/getNode/eachNode/的文档

javascript - 使用 javascript,如何通过 onclick 使 CSS 变量覆盖粘贴?

javascript - 如何以 Angular 从 azure 事件目录获取用户的组名?

javascript - 请求功能 Node 内的 Node-RED 版本

javascript - Delete By Query API 以 curl 方式工作,但不在 Node-Red 中

javascript - 如何在ThreeJs中在球体直径上画一条线?

javascript - 如何延迟 NavLink 的 react ?