dataweave - 如何在dataweave中减去两个数组
问题描述
我是 mulesoft 开发的新手,我想在 dataweave 中减去两个数组。两个数组在下面
var array1 = [ {
"FF15974433790786634518": 2 },
{"FF15974433790786634519": 2 },
{ "FF15974433790786634520": 1 } ]
var array2 = [ {"FF15974433790786634518": 1 },
{"FF15974433790786634519": 2 },
{ "FF15974433790786634520": 1 } ]
我想得到这个结果:
[ {"FF15974433790786634518": 1 },
{"FF15974433790786634519": 0 },
{ "FF15974433790786634520": 0 } ]
我可以知道如何在 dataweave 中写入吗
解决方案
许多方法可以做到这一点,其中一个如下:迭代第一个数组,随后在数组中的每个对象上迭代,然后使用对象中的键(这是字母数字字符串),通过减去构建目标/所需对象结构存储在每个数组中的键的值
脚本:
%dw 2.0
output application/json
var array1 = [
{"FF15974433790786634518": 2},
{"FF15974433790786634519": 2},
{ "FF15974433790786634520": 1}
]
var array2 = [ {"FF15974433790786634518": 1 },
{"FF15974433790786634519": 2 },
{ "FF15974433790786634520": 1 } ]
---
(array1 map {
temp: $ mapObject {
($$):(array1[($$)][0] - array2[($$)][0])
}
}.temp)
输出:
[
{
"FF15974433790786634518": 1
},
{
"FF15974433790786634519": 0
},
{
"FF15974433790786634520": 0
}
]
推荐阅读
- module - 如何从特定模块创建所有装饰函数的向量?
- javascript - 点击子ul后禁止点击在父li上注册
- python - 编写矩阵(二维列表)函数的对角线
- java - 最好将代码放在同一类或不同类中?
- wordpress - 在 WordPress 网站上使用 SCSS 语法而不使用插件
- node.js - 节点应用程序可在 aws 服务器内部访问,但不能在外部访问
- arrays - 如何实现 type:(new mongoose.Schema) as Array
- javascript - Node.js 在 child_process.spawn 中出现错误
- reactjs - 在我的 src 文件夹中有本地节点模块时出现 Babel 问题
- python-3.x - 如何解码网页中的编码文本