Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

72
Visualizações
Find the object key that's not used in a replace function

I have a replace function that takes the values from an object and replaces the template literals like this:

let componentJSON = [
  { "template": "<div class='${layout} ${border}'></div>" },
  {
    "layout": "grid",
    "color": "blue",
    "border": "primary"
  }
];

const template = componentJSON[0].template
const classes = componentJSON[1]

let html = template.replace(/\$\{(.*?)\}/g, (match, key) => classes[key]);

console.log(html);

Is it possible to then return (or consoleLog) the object key that wasn't used? In this case "color": "blue"

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

I suppose you could delete the property from the object, then examine what remains in the object at the end.

let componentJSON = [
  { "template": "<div class='${layout} ${border}'></div>" },
  {
    "layout": "grid",
    "color": "blue",
    "border": "primary"
  }
];

const template = componentJSON[0].template
const classes = componentJSON[1]

const html = template.replace(
  /\$\{(.*?)\}/g,
  (match, key) => {
    const str = classes[key];
    delete classes[key];
    return str;
  }
);

console.log(componentJSON[1]);

about 4 years ago · Juan Pablo Isaza Relatório

0

Keep track of the keys used then filter them from the original key set

let componentJSON = [
  { "template": "<div class='${layout} ${border}'></div>" },
  {
    "layout": "grid",
    "color": "blue",
    "border": "primary"
  }
];

const [ { template }, classes ] = componentJSON;

const usedKeys = new Set();
let html = template.replace(/\$\{(.*?)\}/g, (match, key) => 
  (usedKeys.add(key), classes[key]));

console.log(html);

const unused = Object.fromEntries(
  Object.entries(classes).filter(([ key ]) => !usedKeys.has(key))
);

console.log("unused", unused);

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda