Changeノードを使う(その3)

Changeノードの最終回です。

プロパティの削除

最初のサンプルは「flows > node-red > function > change > 06 - Delete message property」です。msgプロパティを削除できるようです。へー。


削除したプロパティにアクセスすると例外は発生せず「undefined」になります。JavaScriptだと一般的な挙動ですね。


プロパティの移動

次のサンプルは「flows > node-red > function > change > 07 - Move message property」です。


Injectノードではmsg.topicに文字列「Hello」を設定しています。


Changeノードでは、msg.topicの値をmsg.payloadに移動しています。


フローを実行すると、msg.payloadの値に「Hello」が設定されていることが確認できます。


ところで、移動元のmsg.topicの値はどうなったんでしょう?疑問に思ったので、以下のようにDebugノードを追加してmsg.topicの値を出力してみます。


フローを実行すると、msg.topicは「undefined」になりました。「値の移動」とは文字通り「移動」ということのようです(コピーではない)。

まとめ

以上でChangeノードのサンプル確認は終了です。今回の内容をまとめます。
  • プロパティの値は削除できる
    • 削除したプロパティはundefinedになる
  • プロパティの値は移動できる
    • 移動元はundefinedになる
    • 文字通り値が移動する(コピーではない)
Changeノードでできる操作は、サンプルでは利用していないもの含め以下の4つのようです。
  • 値の代入
  • 値の置換
  • 値の削除
  • 値の移動

コメント

このブログの人気の投稿

Execノードを使う

Joinノードを使う(その4)

SendGridのX-SMTPAPIヘッダの使い方(Section Tags、Substitution Tags編)