简体   繁体   English

AWS Step Functions:使用键将状态数组输出转换为对象

[英]AWS Step Functions: Transform a state array output to an object with keys

I need to transform the output of a parallel step that comes out as an array into an object. 我需要将以数组形式出现的并行步骤的输出转换为对象。 Consider something like this: 考虑这样的事情:

Output of the parallel step: 并行步骤的输出:

[1, 2, 3]

I need to transform it to an object: 我需要将其转换为对象:

{ "one": 1, "two": 2, "three": 3 }

Any ideas? 有任何想法吗?

try this, hope this can help you 试试这个,希望对您有帮助

 <!DOCTYPE html> <html> <head> <title></title> </head> <body> <script type="text/javascript"> var array = [1, 2, 3, 21]; var output= {}; for (var i in array) { output[inWords(array[i])] = array[i]; } console.log(output); function inWords (num) { var a = ['','one','two','three','four','five','six','seven','eight','nine','ten','eleven','twelve','thirteen','fourteen','fifteen','sixteen','seventeen','eighteen','nineteen']; var b = ['', '', 'twenty','thirty','forty','fifty', 'sixty','seventy','eighty','ninety']; if ((num = num.toString()).length > 9) return 'overflow'; n = ('000000000' + num).substr(-9).match(/^(\\d{2})(\\d{2})(\\d{2})(\\d{1})(\\d{2})$/); if (!n) return; var str = ''; str += (n[1] != 0) ? (a[Number(n[1])] || b[n[1][0]] + ' ' + a[n[1][1]]) + 'crore ' : ''; str += (n[2] != 0) ? (a[Number(n[2])] || b[n[2][0]] + ' ' + a[n[2][1]]) + 'lakh ' : ''; str += (n[3] != 0) ? (a[Number(n[3])] || b[n[3][0]] + ' ' + a[n[3][1]]) + 'thousand ' : ''; str += (n[4] != 0) ? (a[Number(n[4])] || b[n[4][0]] + ' ' + a[n[4][1]]) + 'hundred ' : ''; str += (n[5] != 0) ? ((str != '') ? 'and ' : '') + (a[Number(n[5])] || b[n[5][0]] + a[n[5][1]]) : ''; return str; } </script> </body> </html> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM