Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.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 运行Object.keys以在对象中包含嵌套值_Javascript_Algorithm_Object_Key - Fatal编程技术网

Javascript 运行Object.keys以在对象中包含嵌套值

Javascript 运行Object.keys以在对象中包含嵌套值,javascript,algorithm,object,key,Javascript,Algorithm,Object,Key,假设我有一个目标 myObject = { prop1: 'someValue', prop2: { subProp1: 'nestedValue', supProp2: { superNestedProp: 'superNestedValue' } } } 如何运行一个返回所有键(包括嵌套键)的函数 示例输出: [prop1,prop2,Subop1,Subop2,superNestedProp]您可以构建一个递归函数,在该函数中,您

假设我有一个目标

myObject = {
  prop1: 'someValue',
  prop2: {
     subProp1: 'nestedValue',
     supProp2: {
        superNestedProp: 'superNestedValue'
     }
  }
}
如何运行一个返回所有键(包括嵌套键)的函数

示例输出:


[prop1,prop2,Subop1,Subop2,superNestedProp]
您可以构建一个递归函数,在该函数中,您可以使用
flatMap
对象。条目
获得预期输出:

const myObject={prop1:'someValue',prop2:{subsp1:'nestedValue',supplop2:{superNestedProp:'superNestedValue'}};
const getProps=obj=>Object.entries(obj).flatMap([k,v])=>typeof v==“Object”?[k,…getProps(v)]:k);
log(getProps(myObject))