Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在javascript中获取对象数组中的值_Javascript_Html_Arrays_Object - Fatal编程技术网

如何在javascript中获取对象数组中的值

如何在javascript中获取对象数组中的值,javascript,html,arrays,object,Javascript,Html,Arrays,Object,我想知道如何使用javascript获取嵌套数组中的对象 var value = "SGD" var obj=[{ country: singapore, ccy: ["EUR","SGD"] amount: "1000" },{ country: thailand, ccy: ["THB"] amount: "1000" }] function getData(){ return obj.filter((e)=>{ return e.ccy == va

我想知道如何使用javascript获取嵌套数组中的对象

var value = "SGD"
var obj=[{
  country: singapore,
  ccy: ["EUR","SGD"]
  amount: "1000"
},{
  country: thailand,
  ccy: ["THB"]
  amount: "1000"
}]

function getData(){
 return obj.filter((e)=>{
    return e.ccy == value; // fetch array object if it matches the value
  }
}

var result = getData();
console.log(result);


很难从您的问题中分辨出来,但是如果您想要数组中的第一个匹配条目,您需要在搜索中使用on
ccy
来查找该方法:

function getData(){
    return obj.find(e => e.ccy.includes(value));
}
实例:

var value=“SGD”;
var obj=[{
国家:“新加坡”,
ccy:[“欧元”、“新加坡元”],
金额:“1000”
},{
国家:“泰国”,
ccy:[“泰铢”],
金额:“1000”
}];
函数getData(){
返回obj.find(e=>e.ccy.includes(value));
}
var result=getData();

控制台日志(结果)
e.ccy
是一个数组。将其与任何其他变量进行比较将永远不会返回
true
,除非两者具有相同的引用。使用
array.prototype.includes()检查数组中是否存在元素

var value=“SGD”;
var obj=[{
国家:'新加坡',
ccy:[“欧元”、“新加坡元”],
金额:“1000”
},{
国家:'泰国',
ccy:[“泰铢”],
金额:“1000”
}]
函数getData(){
返回对象筛选器((e)=>{
返回e.ccy.包括(值)
})
}
var result=getData();

控制台日志(结果)
要获取包含变量
值中所选货币的对象数组,您可以结合使用:

const value='SGD';
const obj=[{国家:'新加坡',ccy:['欧元','新加坡元'],金额:'1000'},{国家:'泰国',ccy:['泰铢'],金额:'1000'}];
const getData=(arr,value)=>arr.filter(o=>o.ccy.includes(value));
常量结果=获取数据(对象,值);
控制台日志(结果)
var obj=[{
国家:'新加坡',
ccy:[“欧元”、“新加坡元”],
金额:“1000”
},{
国家:'泰国',
ccy:[“泰铢”],
金额:“1000”
}]
函数getData(val){
变量结果=对象查找(函数(o){
返回o.ccy.indexOf(val)>-1;
});
返回结果;
}

log(getData('SGD')
e.ccy.includes(value)
如果有效,您将需要映射/过滤器的组合。。。或者找到或者something@georg-否,includes返回布尔值,而不是object@JaromandaX当前位置我不知道OP在问什么,你也不知道。在他们发布他们的代码和示例输出之前,我们所能做的就是做出或多或少的准确猜测。我完全知道他们在问@georg什么-线索就在问题中<代码>获取数组对象(如果它与值匹配)