Javascript 如果键与数组值匹配,如何获取值
我已经编写了一个数组,如下所示Javascript 如果键与数组值匹配,如何获取值,javascript,arrays,function,object,Javascript,Arrays,Function,Object,我已经编写了一个数组,如下所示 const OBJECT = { '3': 'History And Social Sciences', '5': 'Humanities', '8': 'Global Studies And Social Impact', '10': 'Sanskrit' }; var rou=[3,5,8,10]; 我想在键与值匹配时获取字段值。有人知道吗?rou[0]是3,rou[1]是5,依此类推。您需要检查值为3的rou[0]是否是字
const OBJECT = {
'3': 'History And Social Sciences',
'5': 'Humanities',
'8': 'Global Studies And Social Impact',
'10': 'Sanskrit'
};
var rou=[3,5,8,10];
我想在键与值匹配时获取字段值。有人知道吗?rou[0]是3,rou[1]是5,依此类推。您需要检查值为3的rou[0]是否是字典的键 您可以像这样从对象访问值
var value = OBJECT.rou[0]
迭代“rou”数组,并为其每个值在
rou
上的对象map
中找到相应的值,然后从该键的对象
中获取值:
const对象={
"3":"历史和社会科学",,
"5":"人文",,
“8”:全球研究和社会影响,
‘10’:‘梵语’,
};
var rou=[3,5,8,10];
var值=rou.map(k=>OBJECT[k]);
console.log(值)
迭代器it=jsonObject.keys();
列表=新的ArrayList();
while(it.hasNext()){
int key=it.next();
列表。添加(键);
}
循环对象属性,并通过indexOf比较是否在arr中找到该键,如果找到,则获取该键的值
const OBJECT={'3':'历史和社会科学','5':'人文','8':'全球研究和社会影响','10':'梵文','a':'abc';
var rou=[3,5,8,10];
for(对象中的var属性){
if(OBJECT.hasOwnProperty(property)和&rou.indexOf(parseInt(property))!=-1){
log(对象[属性]);
}
}
使用,更简单
R.pick(['a', 'd'], {a: 1, b: 2, c: 3, d: 4}); //=> {a: 1, d: 4}
R.pick(['a', 'e', 'f'], {a: 1, b: 2, c: 3, d: 4}); //=> {a: 1}
如果您感兴趣,请查看其
const对象={
"3":"历史和社会科学",,
"5":"人文",,
“8”:全球研究和社会影响,
“10”:“梵语”
};
var rou=[3,5,8,10];
var res=Object.keys(Object.reduce)(acc,cur)=>rou.indexOf(parseInt(cur))!=-1?(acc.push(Object[cur]),acc:acc,[]
console.log(res)
这个问题是针对Javascript而不是Java提出的。请提供一些解释-是什么让您认为此代码解决了给定的问题?如果数组包含的值不存在于对象中,则会出现问题,它将控制台未定义。
R.pick(['a', 'd'], {a: 1, b: 2, c: 3, d: 4}); //=> {a: 1, d: 4}
R.pick(['a', 'e', 'f'], {a: 1, b: 2, c: 3, d: 4}); //=> {a: 1}