【发布时间】:2019-03-29 08:46:41
【问题描述】:
我想了解如何根据 javascript 中的输入对象获取值。 如果源匹配货币并且也匹配对象中的paymentin和paymentout类型,则获取速度和费用的值
例如,带有 type_in 'credit' 和 type_out 'bank' 的 'SGD' 应该返回速度和费用
预期输出:
id: transfer credit: 1 days 1% pay_in: pay_out: bank
id: insta debit: 1 days 1.5% pay_in: pay_out: bank
我试过了,但是卡住了
function getValue(source,typein,typeout,obj){
var filterArr = source.filter(function(value){
return value.country_from.filter(function(payin){
const in= payin.paymentIn.filter(function(ty){
return ty.type == typein
})
const out = payin.paymentIn.filter(function(ty){
return ty.type == typeout
})
})
})
}
var result = getValue(source,type_in,type_out,obj);
//input objects
var source="SGD";
var type_in="credit";
var type_out="bank";
var obj = [{
"id": "transfer",
"country_from": [{
"currency": [
"SGD",
"USD"
],
"paymentIn": [{
"type": "credit",
"speed": {
"unit": "days",
"number": "1"
},
"fee": {
"type": "%",
"number": "1"
}
}],
"paymentOut": [{
"type": "bank",
"speed": {
"unit": "days",
"number": "2"
}
}]
}]
}, {
"id": "insta",
"country_from": [{
"currency": [
"SGD",
"USD"
],
"paymentIn": [{
"type": "credit",
"speed": {
"unit": "days",
"number": "1"
},
"fee": {
"type": "%",
"number": "1.5"
}
}],
"paymentOut": [{
"type": "bank",
"speed": {
"unit": "days",
"number": "2"
}
}]
}]
}]
【问题讨论】:
-
对预期输出感到困惑,这真的是预期的还是未格式化的?
-
但是为什么带有 'id: insta ...' 的第二行是结果的一部分?它有一个 paymentIn 类型的借方,而输入要求贷方?
-
@wentjun 感谢您的及时回复,将更新更改
-
@Harish 感谢您的及时回复,我应该将输出作为 paymentin 值和 paymentout 值发送到相应的源,type_in 和 type_out
-
@sowmiya 我已经发布了我的回复。它应该工作。我会尝试格式化它
标签: javascript arrays node.js object