javascript - 如何在数组中断言数组?
问题描述
有人可以帮我在邮递员的数组中断言数组吗?
我有这样的代码和平:
"documents": [
{
"fileName": "file01_guid.pdf",
"documentType": "document",
"parentFiles": [
"file01.pdf"
]
},
{
"fileName": "file02_guid.pdf",
"documentType": "document",
"parentFiles": [
"file01.pdf"
]
}
我需要使用此方法断言“ParentFiles”数组:
var array = [];
var range = (json_response.data.documents).length
for (var i = 0; i < range; i++)
{
var file = json_response.data.documents[i].fileName
var type = json_response.data.documents[i].documentType;
array.push(file)
array.push(type)
}
所以我可以写这样的测试:
{
pm.expect(array).to.include("file01.pdf", "file01.pdf");
});
先感谢您
解决方案
您可以"file01.pdf"
通过简单地过滤和检查长度来验证是否存在。您还可以array
通过减少来更有效地构建您的。
const json_response = {
"data": {
"documents": [{
"fileName": "file01_guid.pdf",
"documentType": "document",
"parentFiles": ["file01.pdf"]
}, {
"fileName": "file02_guid.pdf",
"documentType": "document",
"parentFiles": ["file01.pdf"]
}]
}
};
const array = json_response.data.documents.reduce((acc, doc) => {
const { fileName, documentType, parentFiles: [ pfName ] } = doc;
return [ ...acc, fileName, documentType, pfName ];
}, []);
console.log(array);
// Exactly two instances of "file01.pdf" exist.
console.log(array.filter(val => val === "file01.pdf").length === 2);
.as-console-wrapper { top: 0; max-height: 100% !important; }
如果您只想比较数组,可以尝试以下操作:
const json_response = {
"data": {
"documents": [{
"fileName": "file01_guid.pdf",
"documentType": "document",
"parentFiles": ["file01.pdf"]
}, {
"fileName": "file02_guid.pdf",
"documentType": "document",
"parentFiles": ["file01.pdf"]
}]
}
};
const allEqual = json_response.data.documents
.every(({ parentFiles: [ filename ] }) => filename === "file01.pdf");
console.log(allEqual);
.as-console-wrapper { top: 0; max-height: 100% !important; }
推荐阅读
- latex - subfig - 不绘制数字
- php - 使用 Laravel HTTP 客户端时不能使用 on_stats 选项
- r - 如何根据一个唯一列修改R中的数据框
- node.js - 然后在 Promise.all 完成之前执行
- react-native - 当磁盘上有缓存的图像时,expo-asset useAssets 挂钩返回未定义
- android - 除非点击通知,否则有什么方法可以使颤动的本地通知在android中持续播放声音?
- python - 实际使用 Radon 来处理 Python 的复杂性(在 Python 中)
- javascript - 如何使用 amountToPrecision ccxt 库
- r - 在动态贝叶斯网络上运行推理时,如何解决“系统完全是奇异的/矩阵在计算上是奇异的”错误?
- python - 如何更正这行代码的缩进?