Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/388.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_Arrays_Object_Data Structures - Fatal编程技术网

Javascript 基于数组的值返回对象的键

Javascript 基于数组的值返回对象的键,javascript,arrays,object,data-structures,Javascript,Arrays,Object,Data Structures,我想问我有没有这样的东西 const dataArray = { key1: ["a", "b"], key2: ["c", "d"], key3: ["e", "f"], }; 我试过了 const obj = Object.keys(dataArray).map((data, index) => { return da

我想问我有没有这样的东西

const dataArray = {
    key1: ["a", "b"],
    key2: ["c", "d"],
    key3: ["e", "f"],
};
我试过了

    const obj = Object.keys(dataArray).map((data, index) => {
        return dataArray[data];
        if (dataArray[data].indexOf("water") > -1) {
            return Object.keys(dataArray);
        }
    });
我想返回一个值为字符串
“c”
的键(键1、键2、键3)


我该怎么做?请帮助

您可以获取对象的条目(键/值对)并进行迭代以获取所需的键(如果值包括“c”)

const数据数组={
键1:[“a”、“b”],
键2:[“c”,“d”],
键3:[“e”,“f”],
};
const entries=Object.entries(数据数组);
for(让条目的输入){
if(条目[1]。包括('c')){
console.log(条目[0])
}
}
您应该知道,
const数据数组={
键1:[“a”、“b”],
键2:[“c”,“d”],
键3:[“e”,“f”],
};
const result1=Object.keys(dataArray.map)(数据,索引)=>{
返回数据数组[数据];
//下面的行不影响!!!
if(dataArray[data].indexOf(“water”)>-1){
返回Object.keys(数据数组);
}
});
console.log(result1.join(',');//来自`dataArray的所有记录`
/*******查找一项=>使用查找*/
log(Object.keys(dataArray.find)(k=>dataArray[k].includes(“c”));
/*******使用筛选器查找多个项=>*/

console.log(Object.keys(dataArray).filter(k=>dataArray[k]。includes(“c”)| | dataArray[k]。includes(“e”))您可以只使用一行代码
console.log(Object.keys(dataArray.find)(k=>dataArray[k].includes(“c”))非常接近,只需要适应搜索数组values@Goacgras这回答了你的问题吗?如果你需要帮助,请告诉我