如何从节点红色的json获取特定值?

时间:2016-06-21 16:54:45

标签: javascript json node.js parsing node-red

 var data = {};                                                                                             
 var data_tester;                                                
 data.payload ={
     "age" : "24",                                                         
     "hometown" : "Missoula, MT",                                                         
     "gender" : "male"
 },                                                         
 data_tester = JSON.parse(data.payload);     

 return data_tester.age;    

这是我的程序,我试图弄清楚如何从这个json中提取年龄值。我正在使用ibm bluemix io​​t watson, 我得到的错误是:

  

SyntaxError:undefined:1 [object Object] ^意外的标记o

1 个答案:

答案 0 :(得分:1)

您必须从函数节点返回消息对象。您的代码只返回age值,它只是 int

您描述的错误是因为Node-RED正在尝试向输出添加一些内部状态(_msgid)而不能,因为它不是对象。正确的做法是返回整个数据对象,例如

var data = {};
data.payload ={
  "age" : "24",
  "hometown" : "Missoula, MT",
  "gender" : "male"
};
return data;

或者如果你真的只想返回一个整数值:

var data = {};
data.payload = 24;
return data;