Der Längenwert des Arrays kann in Node Red JavaScript nicht abgerufen werden
P粉216807924
P粉216807924 2024-01-28 22:21:45
0
1
518

Ich möchte die Länge eines Arrays wissen, das in einer Funktion in NodeRed mit JavaScript gelesen wird, aber es wird kein Wert angezeigt/zurückgegeben. Kann mir jemand helfen?

Dies ist der Code innerhalb des Funktionsblocks in Node-Red

let j = 0;
let array1 = { payload: msg.payload };

j = array1.length;

return j;

Ich sehe keinen Rückgabewert für j. Irgendeine Hilfe?

Ich habe erwartet, dass der Wert von j auf der NodeRed-Debug-Konsole angezeigt wird.

P粉216807924
P粉216807924

Antworte allen(1)
P粉637866931

这是您问题的实际答案。请注意下面给出的这些事项;

  1. let array1 = { payload: msg.payload } 不是数组。它是一个物体。通过obj.length无法找到对象的长度;而是使用 Object.keys(array1).length

如果您想查找对象的长度(属性数量),请使用以下代码片段。

let array1 = { payload: msg.payload };
let length = Object.keys(array1).length;
console.log(length);


// Example
let person = {name: "Mehdi", city: "Jamshoro", country: "PK"}
let length = Object.keys(person).length;
console.log(length);

// Output: 3

数组的长度可以通过以下方式找到:

let arr = [1,2,3,4,5,6]
console.log(arr.length)

// Output: 6

您似乎在函数外部使用 return 语句。 return 在函数之外不起作用。使用 console.log() 代替。

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage