¿La mejor manera de obtener la intersección de las teclas de dos objetos?
Tengo dos literales de objeto como este:
var firstObject =
{
x: 0,
y: 1,
z: 2,
a: 10,
b: 20,
e: 30
}
var secondObject =
{
x: 0,
y: 1,
z: 2,
a: 10,
c: 20,
d: 30
}
Quiero obtener la intersección de las claves que tienen estos dos literales de objeto así:
var intersectionKeys = ['x', 'y', 'z', 'a']
Obviamente, puedo hacer un bucle y ver si existe una clave con el mismo nombre en el otro objeto, pero me pregunto si este sería un buen caso para alguna programación funcional y un mapa / filtro / uso reducido. Yo mismo no he hecho tanta programación funcional, pero tengo la sensación de que podría existir una solución limpia e inteligente para este problema.