Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

128
Views
How to add methods dynamically to a javascript object

I have a scenario that need to add new methods to an object dynamically.

Basically, this new method will be passed as parameter to a function. Then inside the function i will add this method to the object.

sampleFunction(() => console.log("This is new function"))

function sampleFunction(newMethod) {
  var Person = {
    first_name: "Marty",
    last_name: "Mcfly",
    born: 1968,
  };

  let p = new Person();

  // code to add new methods to Person Object here ....
}

Above is the example for the scenario i faced.

Really Appreciated if anyone can help me.

Thanks.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

You can't use new without a constructor. For your object literal you do not even need a class/constructor. Just attach a new property.

sampleFunction(() => console.log("This is new function"))

function sampleFunction(newMethod) {
  var Person = {
    first_name: "Marty",
    last_name: "Mcfly",
    born: 1968,
  };
Person.newMethod = newMethod;

  console.log(Person);
  Person.newMethod();
}

Note, you might want to name your method better. Suggest you to pass one more param with the name:

    sampleFunction(() => console.log("This is new function"),'mynewmethod')

    function sampleFunction(newMethod,name) {
      var Person = {
        first_name: "Marty",
        last_name: "Mcfly",
        born: 1968,
      };
    Person[name] = newMethod;

      console.log(Person);
      Person.mynewmethod();
    }

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!